较全面的常见的OJ评判结果以及它们表示的意思

来源:互联网 发布:linux开启snmp服务 编辑:程序博客网 时间:2024/06/05 03:08


下面是常见的OJ评判结果以及它们表示的意思

Queuing : 提交太多了,OJ无法在第一时间给所有提交以评判结果,后面提交的程序将暂时处于排队状态等待OJ的评判。不过这个过程一般不会很长。

Waiting你的程序刚刚提交,正在等待OJ评测你的程序。

Compiling : 您提交的代码正在被编译。

Running : 您的程序正在OJ上运行。

Judging : 正在检查您程序的输出是否正确。

Rejudging 我们更新了测试数据或者评判程序,并且正在进行重测,这个过程比较耗费资源,请稍候。

Accepted (AC) : 您的程序是正确的,恭喜!

Presentation Error (PE) : 虽然您的程序貌似输出了正确的结果,但是这个结果的格式有点 问题。请检查程序的输出是否多了或者少了空格(' ')、制表符('\t')或者换行符('\n'甚至大小写等。离AC就差一点点啦!

Wrong Answer (WA) : 你的程序顺利地运行完毕并正常退出,但是输出的结果却是错误的。状态页面CASE那一览显示的是你的程序在第几个样例上出错的

注意:有的题包含多组测试数据,你的程序只要有一组数据是错误的,结果就是 WAPresentation Error你的程序输出的答案是正确的,但输出格式不对,不过计算机程序是很难准确判断PE错误的,所以,很多PE错误都会被评判成WA


Runtime Error (RE) : 运行时错误,这个一般是程序在运行期间执行了非法的操作造成的。你异常终止了,导致这种状态的情况有很多,以下列出常见的错误类型:

        ACCESS_VIOLATION 您的程序想从一些非法的地址空间读取或向其中写入内容。一般例 指针、数组下标越界都会造成这个错误的。

        ARRAY_BOUNDS_EXCEEDED 您的程序试图访问一个超出硬件支持范围的数组单元。

        FLOAT_DENORMAL_OPERAND 进行了一个非正常的浮点操作。一般是由于一个非正常的 浮点数参与了浮点操作所引起的,比如这个数的浮点格式不正确。

        FLOAT_DIVIDE_BY_ZERO 浮点数除法出现除数为零的异常。

        FLOAT_OVERFLOW 浮点溢出。要表示的数太大,超出了浮点数的表示范围。

        FLOAT_UNDERFLOW 浮点下溢。要表示的数太小,超出了浮点数的表示范围。

        INTEGER_DIVIDE_BY_ZERO 在进行整数除法的时候出现了除数为零的异常。

        INTEGER_OVERFLOW 整数溢出。要表示的数值太大,超出了整数变量的范围

        STACK_OVERFLOW 栈溢出。一般是由于无限递归或者在函数里使用了太大的数组变量的原因。即栈空间被用完了。

 

Time Limit Exceeded (TLE) : 您的程序运行的时间已经超出了这个题目规定的最大时间,你的程序被Online Judge强行终止。 TE并不能说明你的程序的运行结果是对还是错,只能说明你的程序用了太多的时间。(措施:改变算法,或者优化程序)

Memory Limit Exceeded (MLE) : 您的程序运行的内存已经超出了这个题目的内存限制。

注意:并不能说明你的程序的运行结果是对还是错,只能说明你的程序用了或者申请了太多的内存。(措施:改变算法,或者优化程序)

Output Limit Exceeded (OLE) : 您的程序输出内容太多,超过了这个题目的输出限制。 Online Judge规定提交的程序在运行的时候只能输出1024K字节的东西,如果你输出太多,将导致此错误。我们保证所有的题目的标准输出都小于1024K字节。

措施:检查if的并列情况,或者出现了无限递归,不能终止输出

Compilation Error (CE) : 您的程序语法有问题,编译器无法编译。具体的出错信息可以点击链接察看。如果你的程序在本机能够正常编译,请在下面的编译出错怎么办查看更详细的解决办法。一般来说,这种错误主要是由 Linux环境下相关编译器与你使用的 本地编译器之间的差异造成的

System Error (SE) : OJ内部出现错误。由于我们的OJ可能存在一些小问题,所以出现这个信息请原谅,同时请及时与管理员联系。

Out Of Contest Time : 超出比赛时间,这个信息只有在比赛的时候才会出现。

Floating Point ErrorDivide by 0,除0错误。

Segmentation Fault2种情况可能导致次错误:

buffer overflow -- 缓冲区溢出,也就是你访问 了非法内存,比如你申请了一个大小为2的数组a,却访问了a[10000],或者在C/C++中访问了空指针等等。

stack overflow -- 堆栈溢出,有可能你在c/c++程序的函数中申请了过大的空间,或者递归层次太多,导致堆栈溢出了,轻记住堆栈的大小为8192KB.

Restricted Function Function Limit Exceeded:你的程序调用了不该调用的函数比如fork(),execv(),socket等等危险的函数,清牢记一点:在你的程序中只作与解决问题有关的事情,尽情其他的操作都会被OJ拦截下来。诸如文件操作等相关函数。特别注意:system("PAUSE");也会导致此错误

基本覆盖,以后再补充!


原创粉丝点击