[COGS] 提交与评测

王者自由 在 2012-04-08 创建  开放分组:全部用户  上次编辑时间:2015-02-28 页面访问次数:367次
评测结果说明
A 答案正确
W 答案错误
T 超过时间限制
M 超过内存限制
R 没有输出文件
E 运行时错误
D 没有测试点数据
C 编译错误
N 没有源代码
P 答案部分正确
  • 评测机的编译选项:
  • Pascal:fpc file.pas -So -XS -v0 -O1 -ofile
  • C:gcc file.c -lm -w -O2 -static -o file
  • C++:g++ file.cpp -lm -w -O2 -static -o file
  • 为什么程序在我的电脑上能够正常运行,而在评测系统上不能?
    1. 评测系统建立在Linux下,编译器采用Gcc,G++,Free Pascal.评测系统在比较你的输出时默认采用忽略一切无效字符(空格,回车等)的策略。
    2. 评测系统对你的程序内存的使用进行限制,默认为128MB,同时也对你的程序堆栈的使用进行限制。如果你的程序使用递归多达100,000层(甚至更多),那么你的程序很可能运行时出错。
    3. 对于C和C++语言,主函数一定要定义为int main()而不是void main()。如果你的程序运行正常结束,应向系统返回一个整型值0,而不是其他的东西。
    4. 评测系统和你的电脑使用的内存安排方式可能不同。某些在你的电脑上没有经过初始化,理应为0的变量在评测系统上有可能并不如你所想的那样。
    5. Linux对内存的访问控制更为严格,因此在Windows上可能正常运行的无效指针或数组下标访问越界,在评测系统上无法运行。
    6. 严重的内存泄露的问题很可能会引起系统的保护模块杀死你的进程。因此,凡是使用malloc(或calloc,realloc,new)分配而得的内存空间,请使用free(或delete)完全释放。
    7. 在极少数情况下,你的程序运行错误(或编译失败)是因为你使用的某些变量与编译系统的变量名或函数名重复(例如:mmap,fork,pipe,exec,system,socket)。对于这种问题,你只好尝试替换某些可能与系统变量名重复的变量名。
    8. 注意浮点运算,二进制浮点数运算的时候很有可能会造成意想不到的差异。例如a=0.00001+0.000001;
    9. 如果你会两种以上的语言,不妨将你的代码“翻译”成另一种语言然后提交,或许在翻译的时候你会发现你的程序的错误。如果翻译以后能够正常通过,那么请仔细检查你原来的程序。
    10. 如果以上都无法解决问题,请与管理员联系。或者联系作者:CmYkRgB123(作者已放弃此OJ,不再进行维护)
  • 进入个人设置即可更改用户头像和背景图片。


  • 关于 提交与评测 的讨论
    Gravatar
    rvalue
    积分:720
    提交:213 / 573
    抢个沙发应该没事吧

    2016-04-13 21:08:24 1楼