Python 3.x 获取codechef问题的运行时错误“;“在巧克力中生存”;

Python 3.x 获取codechef问题的运行时错误“;“在巧克力中生存”;,python-3.x,Python 3.x,我试图解决这个codechef问题,但遇到运行时错误。有人能解释一下为什么我会收到这个吗 这是问题的链接: t=int(输入()) 对于范围(t)内的uu: a=input().split(“”) n=int(a[0]) k=int(a[1]) s=int(a[2]) d=n//k 太阳=7 i=d 对于范围(d,s+1,d)内的i: 如果我>太阳: 太阳+=7 如果(i+1)%7==0: 打破 如果i==s: 打印(s-d) elif(i+1)=太阳: 如果i==s: 打印(s-d) 如果i

我试图解决这个codechef问题,但遇到运行时错误。有人能解释一下为什么我会收到这个吗

这是问题的链接:

t=int(输入())
对于范围(t)内的uu:
a=input().split(“”)
n=int(a[0])
k=int(a[1])
s=int(a[2])
d=n//k
太阳=7
i=d
对于范围(d,s+1,d)内的i:
如果我>太阳:
太阳+=7
如果(i+1)%7==0:
打破
如果i==s:
打印(s-d)
elif(i+1)=太阳:
如果i==s:
打印(s-d)
如果i+1==s:
打印(-1)
其他:
打印(-1)

elif(i+1)我做了一些研究,发现问题出在codechef的在线编辑器上。 您的问题的一个小解决方法是使用try-and-except捕捉错误。

try:
    t=int(input())
    for _ in range(t):
        a=input().split(" ")
        n=int(a[0])
        k=int(a[1])
        s=int(a[2])
        d=n//k
        sun=7
        i=d
        for i in range(d,s+1,d):
            if i>sun:
                sun+=7

            if (i+1)%7==0:
                break

        if i==s:
            print(s-d)

        elif (i+1)==sun:
            if i==s:
                print(s-d)
            elif i+1==s:
                print(-1)
            else:
                print(-1)

        elif (i+1)<sun:
            if s<sun:
                print(s-d)
except:
    pass
试试看:
t=int(输入())
对于范围(t)内的uu:
a=input().split(“”)
n=int(a[0])
k=int(a[1])
s=int(a[2])
d=n//k
太阳=7
i=d
对于范围(d,s+1,d)内的i:
如果我>太阳:
太阳+=7
如果(i+1)%7==0:
打破
如果i==s:
打印(s-d)
elif(i+1)=太阳:
如果i==s:
打印(s-d)
如果i+1==s:
打印(-1)
其他:
打印(-1)

elif(i+1)错误是什么?提交代码时出现运行时错误…我认为某些边界条件失败了,但不知道是什么原因,您已经声明在问题中遇到了运行时错误。您应该提供错误消息、攻击性行号、堆栈跟踪等。它显示NZEC(非零退出代码),但我在提交代码时遇到运行时错误…我认为某些边界条件失败,但不知道使用原始输入()的哪种方法。split(“”)而不是int(输入())。src我刚刚在一个在线编辑器中尝试了你的代码,它运行得非常好。你能在那里确认一下吗?是的,我试过了。它运行良好,但当我将其提交给code chef时,它会给出相同的NZEC错误。我认为有一些边界条件是失败的,我不知道是哪个。非常感谢你抽出时间。
try:
    t=int(input())
    for _ in range(t):
        a=input().split(" ")
        n=int(a[0])
        k=int(a[1])
        s=int(a[2])
        d=n//k
        sun=7
        i=d
        for i in range(d,s+1,d):
            if i>sun:
                sun+=7

            if (i+1)%7==0:
                break

        if i==s:
            print(s-d)

        elif (i+1)==sun:
            if i==s:
                print(s-d)
            elif i+1==s:
                print(-1)
            else:
                print(-1)

        elif (i+1)<sun:
            if s<sun:
                print(s-d)
except:
    pass