【发布时间】:2017-07-13 19:29:00
【问题描述】:
下面是我在 Python3 中用于 Codechef 挑战的代码:
from itertools import groupby
counter=int(input())
arg=[]
p=[]
for i in range(int(counter)):
arg.append(input())
num=0
while (num<counter):
x=arg[num]
l=x.replace('=','')
groups=groupby(y)
result = [(label, sum(1 for _ in group)) for label, group in groups]
for i in range(0,len(result)):
p.append(result[i][1])
print (max(p)+1)
p=[]
num+=1
我遇到了八个测试用例中的四个的运行时错误 (NZEC)。 我已经检查了https://discuss.codechef.com/questions/7593/why-do-i-get-an-nzec,but 找不到此问题的解决方案。任何帮助都会很棒。提前致谢。
编辑1: 我修复了 Traceback,它仍然在四分之二的情况下提供 NZEC。代码是:
from itertools import groupby
counter=int(input())
arg=[]
p=[]
for i in range(int(counter)):
arg.append(input())
num=0
while (num<counter):
x=arg[num]
l=x.replace('=','')
groups=groupby(l)
result = [(label, sum(1 for _ in group)) for label, group in groups]
for i in range(0,len(result)):
p.append(result[i][1])
print (max(p)+1)
p=[]
num+=1
问题说第一行包含测试用例的数量。以下每一行都包含我一个一个作为输入的每个测试用例,如问题中所述。仍然给出相同的错误。问题是我在 Codechef 中使用 Python 作为语言时经常遇到 NZEC 错误。
【问题讨论】:
-
代码应该做什么?它是哪个“Codechef”挑战?什么是挑战问题陈述?请提供一些关于如何为程序提供输入以及这些输入应该是什么的上下文......当我运行代码时,我只会看到用户输入的提示。如何让它给出
"znec"错误? -
对不起,这将提供一些上下文:codechef.com/JULY17/problems/CHEFSIGN
-
不用担心,感谢您提供问题陈述的链接。哪些输入会导致非零退出代码?当我运行脚本时,我得到
Traceback (most recent call last): File "script.py", line 11, in <module> groups=groupby(y) NameError: name 'y' is not defined -
对于每个测试用例,你输入了多少行?问题陈述显示每个测试用例应该只包含在 one 输入行中,但是您的代码似乎一次将每个字符输入一行。我不确定这是否与您遇到的
ZNEC错误有关,但如果测试引擎在 一个 行中提供所有输入,它可能会阻止您的代码通过测试用例。跨度> -
问题说每个测试用例将包含一行,因此测试用例应该出现在它们自己的行中。即使这是问题所在,它不应该在每个测试中给出一个 NZEC输入而不是选定的几个?
标签: python python-3.x runtime-error