恕我先直言,陈老师是时候更新下pat的测试java的判定系统了吧。。。简直是对java选手的亵渎啊……
恐怕很多人遇到了这个情况,第三方牛客网运行正常,到了浙大pat官网用同样的java代码怎么就返回非零了呢?请各位往下看!
一、对于返回非零,官方微信写的是:c语言没有return 0,java语言运行出现异常。
解决方法:
- 首先确保没有加package,类名称为Main。
- 为了运行效率,请使用
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
因为pat系统对scanner支持不友好且运行时间长。 - 请在使用完bufferedreader之后立刻使用close();方法关闭,否则可能会发生内存泄漏(关闭的越早越好)。
- 【重要】请不要随便import没有用到的包,亲测若是导入了java.util.Scanner可是你没有用到scanner,就会返回非零。
二、对于运行超时
- 一般对于100ms时间限制的题目,基本ac不了,哪怕优化得再好。因为很多乙级题目运行时长(该死的jvm启动)在100ms上下,运气好ac的多,运气差全超时!
- 200ms以上的题目,若是运行超时,那就请不要用暴力破解。
- 还是超时的话,建议换语言。官方说明:选择合适的语言也是一种技巧,所以不给你java放宽时间限制!