acm评判结果

上传人:子 文档编号:43098676 上传时间:2018-06-04 格式:DOC 页数:14 大小:40.50KB
返回 下载 相关 举报
acm评判结果_第1页
第1页 / 共14页
acm评判结果_第2页
第2页 / 共14页
acm评判结果_第3页
第3页 / 共14页
acm评判结果_第4页
第4页 / 共14页
acm评判结果_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《acm评判结果》由会员分享,可在线阅读,更多相关《acm评判结果(14页珍藏版)》请在金锄头文库上搜索。

1、ACMACM 评判结果评判结果ACM 评判结果.txt 如果你同时爱几个人,说明你年轻;如果你只爱一个人,那么,你已经老了;如果你谁也不爱,你已获得重生。积极的人一定有一个坚持的习惯。本系统可以对您提交的源代码进行编译并且运行,然后判断您提交的程序是否符合题目的要求,最后给出相应的信息。具体信息如下:Waiting :系统无法在第一时间给所有提交以评判结果。Compiling : 您提交的代码正在被编译。Running : 您的程序正在系统上运行。Accepted (AC) : 您的程序是正确的,恭喜!Presentation Error (PE) : 虽然您的程序貌似输出了正确的结果,但是这

2、个结果的格式有点问题。请检查程序的输出是否多了或者少了空格( ) 、制表符(t)或者换行符(n) 。Wrong Answer (WA) : 输出结果错,这个一般认为是算法有问题。Time Limit Exceeded (TLE) : 您的程序运行的时间已经超出了这个题目的时间限制。Memory Limit Exceeded (MLE) : 您的程序运行的内存已经超出了这个题目的内存限制。Output Limit Exceeded (OLE) : 您的程序输出内容太多,超过了这个题目的输出限制,多半是死循环引起的。Compilation Error (CE) : 您的程序语法有问题,编译器无法编

3、译。具体的出错信息可以点击链接察看。Out Of Contest TIme : 比赛已经结束,这个只有在比赛中才会出现Runtime Error (RE) : 运行时错误,这个一般是程序在运行期间执行了非法的操作造成的。以下列出常见的错误类型:ACCESS_VIOLATION 您的程序想从一些非法的地址空间读取或向其中写入内容。一般例如指针、数组下标越界都会造成这个错误的。 INTEGER_DIVIDE_BY_ZERO 在进行整数除法的时候出现了除数为零的异常。 STACK_OVERFLOW 栈溢出。一般是由于无限递归或者在函数里使用了太大的数组变量的原因。本系统的评判流程是这样子的:对用户提

4、交的源程序进行编译,如果编译通过,则运行编译好的 EXE 文件,同时使 EXE 文件从文本数据中读取测试数据,并同时保存 EXE 文件的输出,如果 EXE 文件运行没有超出规定的时间与内存空间,则对 EXE 输出的数据与正确答案数据进行比对,最后给出结果。所以用户的程序仍然使用标准输入输出,例如题目1000 可以这样子写常见问题解答1. 我的程序如何进行输入输出?2. 在线判题系统(以下简称 POJ)的编译器是哪些?3. 提交的时候可否使用快捷键?4. 请问提交的程序是如果被判答的?5. POJ 对提交程序的不同判答的意义?6. Special Judge 的题目有什么不同?7. 如何确定程序

5、读入的终止?8. 为什么我的程序在 GCC/G+ (C/C+)下被判成 WA/TLE/RE,但是在C/C+ (GCC/G+)下被判成 AC?9. 有些题目的时间限制是 1 秒,但是有些程序却以几秒的时间 AC 了?10. 我的程序仅仅超过时间限制 15MS,我该怎么优化程序呢?11. 我还有其他问题?_问题: 我的程序如何进行输入输出?解答: 你的程序应该始终使用标准输入(stdin)和标准输出(stdout).比如,你可以使用 scanf(在 C/C+编译器下)或者 cin(在 C+编译器下)来读取数据,使用 printf(在C/C+编译器下)或者 cout(在 C+编译器下)来输出答案.用

6、户提交的程序将不允许读/写文件操作.如果你坚持要这样做,OJ 很可能会返回 Runtime Error(运行时错误)或者 Wrong Answer(答案错误).另外还要注意的是在 C+下的 I/O 操作.由于其复杂的内部实现方式,cin 和 cout 相对于 scanf 和 printf 来说要慢上不少.如果在 G+下编译提交,速度的差异将会愈加明显.所以如果题目给出的数据将有巨大的输入数据时,使用 cin 和 cout 有可能导致意外的 Time Limit Exceed(超时)._问题: 在线判题系统的编译器是哪些?解答: 目前我们使用 5 个编译器来支持各种语言的程序提交.C 和C+采用

7、的是 MS-VC+ 6.0,而对于GCC/G+,采用的是 MinGW+GCC/G+ 3.4.2. 对于 Pascal, 采用的是FreePascal 2.0.0. 对于 Java, 采用的是 JDK 1.5.0.下面是 1000 的正确程序在不同编译器下的写法:C and GCC:#include int main(void)int a, b;scanf(“%d %d“, a, printf(“%dn“, a + b);return 0;C+ and G+:#include using namespace std;int main(void)int a, b;cin a b;cout _che

8、ck。格式检查程序仅仅检查输出文件名的正确性和文件格式的合法性而不检查结果的正确性。检查结果显示在屏幕上。6. 如果领队或参赛选手对评测结果有异议,可以填写相应的表格,并在评测结果公布后的三个小时之内提交评测委员会申请复议或复评。当领队或参赛选手对复议或复评结果仍有异议时,应提交 NOI科学委员会仲裁,并以 NOI 科学委员会的仲裁结果为该项评测的最终结果。 7. 调试的时候,一定要钻输入文件的牛角尖,考虑到各种情况。 8. 调试的时候,常常可以编一个非常非常易编的程序,采用算两次的方法,不过前提是必须保证正确。 9. Writeln 是 Fp 中最笨但又是最准确的调试方法。 10. 调试时每

9、发现一个错误,都最好浏览一下整个程序,看是否有类似错误,这样非常有效! 11. 在每一处可以中止程序的地方,都要看一看是否需要 close file. 12. 程序出现不确定性的问题,如对于同样数据,有时死机,有时不死机,但多半都是随机模块有误! 13. 指针出错常常是出现了 Nil.Next 14. 递归程序的调试应该使用 F7(F8)+Call Stack,尽量不要用F4。 15. 不要只顾埋头拉车,要抬头看路。当被一两个子程莫名其妙的错误弄得晕头转向的时候,记住:很可能错误在其他地方。 16. 读写文件之前才打开文件,操作完毕立即关闭。 17. 每改完一个错误要想想是否改正确了,是否改彻

10、底了,程序中(特别是有 Paste 的地方)是否有相同错误。 18. 很多题目最易忽视的就是初状态=末状态的情况,还有初状态和末状态存在可操作的决策。 (如 Mars Explorer) 19. 多考虑一些特例,在这方面认真些,全面些,仔细些,常比多考虑些时空上限划算得多。 20. 编函数的时候千万别忘了给函数赋返回值,否则会引起随机性错误。 21. 调试语句一般和上下文保留一空行,最好加上注释,并且一定记住在最后删除。 22. 中途输出后结束一定要记住 Halt 23. Byte,Shortint 调试会以 String 类型出现,第一位以字符串长处理,遇到#0 中止。FP 和 RHIDE 中皆如此。 24. FP 中的 Extended 类型有时候变量值未改变。 25. 调试和测试的时候一定要充分考虑到各种边界和特殊情况。 26. 自测时千万不要忘测数据上限,主要是看是否会超界。大半错误均源于此!之后仔细察看 Const 中的数。 27. 大数组处理很容易出错,所以尽量避免开过大的数组及其调试。28. 多维数组的调试 RHIDE 比 FP Bug 还多,而大数组多元素的查看可考虑使用 RHIDE

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号