python代码中USACO问题的EOF错误



我一直在研究USACO问题,到目前为止我有以下代码:

fin = open('revegetate.in', 'r')
fout = open('revegetate.out', 'w')
pasture_num, cow_num = map(int, input().split())
pastures = []
ans = [1] * pasture_num
for _ in range(cow_num):
past1, past2 = sorted(map(int, input().split()))
pastures.append([past1 - 1, past2 - 1])
pastures.sort()
for a, b in pastures:
if ans[a] == ans[b]:
ans[b] += 1
for i, j in pastures[:pastures.index([a, b])]:
if ans[i] == ans[j]:
ans[b] += 1
print(''.join(map(str, and)))

尽管当我运行它时,它在第4行返回EOF错误:

pasture_num, cow_num = map(int, input().split())

样本输入将是:

5 6
4 1
4 2
4 3
2 5
1 2
1 5

我如何修复这个EOF错误?

我将它改为fin.readline()而不是input()。

最新更新