我正在使用Python2解决http://hackerrank.com上的一个问题。
编译器给出了一个错误
回溯(最近一次调用):File“/run-Lx3mHJ3G2jHRLRW9bjx/soltion.py”,第4行,在t= raw_input() EOFError: EOF中读取一行
这是代码:
import sys
a = []
while 1:
t = raw_input()
if t=="":
break
else:
s = [i for i in t]
s.reverse()
a.append(s)
a.reverse()
for i in a:
for j in i:
sys.stdout.write(j)
sys.stdout.write('\n')
当我在我的电脑上运行它时,它可以正常工作。
是我应该向HackerRank解释器报告的问题还是我做错了什么?
为了获得完整的信息,我已经尝试使用“str()”、“str(str())”和其他可能的变体。
发布于 2014-04-14 22:32:37
在得到空行之前,HackerRank似乎不支持重复raw_input()的python成语。HackerRank显然要求提交的代码使用标题部分(输入的第一行或第二行)中的测试描述参数来控制读取的行数。
在我的试验中,试图通过最后一个预期的输入行进行阅读触发了一个类似的EOFError:
...
def main():
lines = []
line = raw_input()
while line:
lines.append(line)
line = raw_input() # line 232
...
结果是
Status: EOFError thrown on line 232
重写输入代码,只读取预期的行数,就足以通过修改后的提交。例如,对于“算法”部分中的“服务车道”热身练习:
...
first_line = raw_input()
freeway_length, testcase_count = parse_session_controls(first_line)
second_line = raw_input()
widths = parse_widths(second_line, freeway_length)
for _unused in range(testcase_count):
testcase_line = raw_input()
entrance_num, exit_num = parse_testcase(testcase_line, freeway_length)
print(measure_bottleneck(widths, entrance_num, exit_num))
...
https://stackoverflow.com/questions/18139502
复制相似问题