程序设计评测常见问题及说明
1 Compilers
1.1 C: gcc 11.4.0
编译支持c2x标准
$ gcc Main.c -o Main -fno-asm -O2 -Wall -lm --static -std=c2x -DONLINE_JUDGE
1.2 C++: g++ 11.4.0
编译支持C++ 23标准
$ g++ -fno-asm -Wall -O2 -lm --static -std=c++23 -DONLINE_JUDGE -o Main Main.cc
请注意 MSVC 和 g++ 的区别,提交的代码中不要包含诸如#include "stdafx.h"之类的头文件,因为系统中没有这个头文件,这是Visual Studio C/C++程序自己的。
显然,#include <bits/stdc++.h>
是支持的。
1.2.1 printf
format for 64 bit integer
%lld
/ %llu
1.3 Java: Open JDK 21.0.1
$ javac -J-Xms512m -J-Xmx2048m MainClassName.java
1.3.1 Java主类名及包
评测系统不限制Java的主类名(main函数所在的类名),如果只有一个类,类名合法即可;若源程序中有多个类,可以将主类声明为public
类即可;源文件中有多个类时,若没有public
类,则主类必须为第一个声明的类,否则会因找不到主类导致Runtime Error
错误;
评测系统支持包声明,可以不声明包,若存在包声明,合法即可;
1.3.2 Time limit
Java 程序的时限是所示值 +4s
1.4 Python: 系统仅支持python3(pypy 3.10.13)
版本:3.10.13;Python 程序的时限是所示值 +2s
1.5 Rust:
版本:1.75.0;标准时间限制
1.6 Clang & Clang++:
版本:14.0.0,编译设置基本同C/C++;标准时间限制
2 Verdicts
2.1 In queue
你的提交正在排队等待。
2.2 Compiling
正在编译。
2.3 Testing
正在运行。
2.4 Accepted
程序通过!
2.5 Presentation Error
答案去除空白字符后和标准输出相同,但是加上空白字符后不相同。
请检查你是否按照题目要求输出换行。
本站评测环境未开启忽略行末空格和文件尾换行,因此如果答案正确,但格式存在问题则会出现Presentation Error
的评测结果。请注意严格按照题目的要求输入输出。
2.6 Wrong Answer
答案不对,仅仅通过样例数据的测试并不一定是正确答案,一定还有你没想到的地方。
2.7 Time Limit Exceeded
运行超出时间限制,检查是否有死循环,或者是否算法的效率太低,应该有更快的计算方法。
2.8 Memory Limit Exceeded
内存使用超过限制,检查数组声明或分配内存是否过大,或者分配内存时存死循环,检查是否存在内存泄露的情况。
2.9 Output Limit Exceeded
输出超过限制,你的输出超过正确答案长度两倍 + 1K 字节。
2.10 Runtime Error
运行时错误,包括但不限于如下情形:
- 整数除零:你可能需要判断分母是否为零
- 段错误:非法访问,检查是否有下标越界
- 进行禁止的系统调用:代码中使用了文件重定向(freopen)、文件操作或system("pause")等评测系统禁止的行为
- 栈溢出:递归过深 或 大数组设为了局部变量
- 未处理的异常
2.11 Compile Error
编译错误,请点击获得详细错误输出。