python3 求解 上传到usaco过了但是在洛谷怎么改都过不了

P1201 [USACO1.1] 贪婪的送礼者Greedy Gift Givers

哇很迷啊……我自己写了一边,过了样例和第一组数据但是提交上去也是re
by LinkinPony @ 2018-11-27 19:37:06


话说lz……你是怎么过掉USACO的评测的 @[没名字的](/space/show?uid=138859) 用这样的读入: ```python while True: try: a = input() if not a: break except EOFError: break ``` 会在读入第一行数据的时候就碰到EOFError导致整个程序什么都不输出…… 顺便拿了你的代码提交了一下(不要介意)也是EOFError orz
by LinkinPony @ 2018-11-29 19:10:49


@[LinkinPony](/space/show?uid=136192) usaco全都需要开文件的...不能用input()或者print() 比如说这个任务文件就叫gift1 with open('gift1.in','r') as f: sume=int(f.readline().strip()) 写入也一样 with open('gift1.out','w') as out: for i in lst: out.write(i+' '+str(dic[i])+'\n') 这个当时也坑死我了...写邮件问了才知道【coach回复得倒挺快】
by 没名字的 @ 2018-11-30 02:29:57


@[没名字的](/space/show?uid=138859) 绝了……怪不得我一上来就是EOFError 那洛谷上RE一定是评测姬的锅了(确信 或者洛谷上USACO的题也要开文件??
by LinkinPony @ 2018-11-30 12:11:46


@[LinkinPony](/space/show?uid=136192) 好像不用,洛谷做过另一个usaco的题也不需要打开文件 已经不是头一次python代码其他地方运行得好好的但是上洛谷就RE了...我放弃了
by 没名字的 @ 2018-11-30 19:13:21


洛谷的py3的确……很神奇 原先我用在线IDE,print(a,b)输出的a和b居然是分行的
by LinkinPony @ 2018-11-30 20:51:23


@[LinkinPony](/user/136192) 应该不是print很神奇,是你读入a的时候带着换行符读的 不管是input()也好还是readline()也好,都会把行尾的换行符读到字符串里,需要用strip去掉多余的换行符
by tjx0726 @ 2022-01-27 19:26:33


|