0

我对以下规范有疑问:

输入:

第一行包含一个整数 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
4

1 回答 1

1

假设您正在从文件中读取(sys.stdin也是一个文件):

f = open('path/to/file')
N = int(f.readline().strip())
A = []
while len(A) < N:
    A.extend(int(i) for i in f.readline().strip().split())

希望这可以帮助

于 2012-10-17T18:30:21.850 回答