A题的一些问题
如果使用C/C++,即使把所有输入都存下来,都是没有问题的,所以C/C++的提交里,没有一个MLE。
然而如果使用其他语言,比如Python,只是把输入数据存下来就会MLE。
那么有人会说,那就别存了,读一个数处理一个数,然而Python处理这种低级别的IO并不擅长,逐个字符读入处理会造成TLE。看了一眼用Python能正常通过的代码,居然使用字节模式读入而非文本模式,时间开销少了不少。
个人觉得这样并不好:
其一,既然是在支持多语言提交的平台比赛,应该保证不同语言的使用者面对的解题难度是类似的,至少考察点是一致的。如果这道题上,内存使用是一个考察点,那么就应该对所有语言都存在不能一次读入所有输入的问题(当然这很没有意义)而非只对部分语言。如果内存使用不是考察点,测题的时候应该有多种不同语言的标程。
其二,这种题目测试数据完全没必要做那么大,单纯的数量巨大,并没有增加解题难度,而一个千到万数量级输入规模的测试case足够保证对解答正确性的判定。