Python 3.x 获取codechef问题的运行时错误“;“在巧克力中生存”;
我试图解决这个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
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