【发布时间】:2012-10-17 18:19:55
【问题描述】:
我对以下规范有疑问:
输入:
第一行包含一个整数 N ,即给定序列中的元素数。 然后是 N 个整数 A1, A2.... An, Ai 是给定序列的第 i 个元素。这些数字可以用空格分隔,也可以用换行符分隔。
如何处理这样的输入? 我尝试了以下方法,但它仅适用于空格分隔的元素。当与换行符分隔的元素一起使用时,分级机会抛出“超时”
import sys
counter=0
A=[]
for line in sys.stdin:
if counter!=0:
A+=[int(Ai) for Ai in line.split()]
else:
N=int(line)
counter+=1
【问题讨论】:
-
line.split()也适用于,等分隔符。 -
是的,但在每一行我要么只有空格,要么只有一个数字。没有其他分隔符
-
据我所知,您的代码工作正常(只要第一行仅包含 1 个数字)并且只要将数据放入
sys.stdin(并且sys.stdin正确终止)...当然,您将获得的不仅仅是 N 个元素...