洛谷快速使用入门技巧
space_Andrew · · 个人记录
这篇文章是针对那些还不熟悉洛谷的用户专门书写的。
在文章此处标有“+”为官方解释
+ 什么是洛谷?
洛谷创建于 2013 年 6 月 15 日,至今已有数万用户,致力于为编程爱好者提供清爽、快捷的编程体验。它不仅仅是一个在线测题系统,更拥有强大的社区、在线学习功能。同时,许多教程内容都是由五湖四海的用户提供的,保证了内容的广泛性。无论是初学 OI 的蒟蒻,还是久经沙场的神犇,均可从洛谷 Online Judge 获益,也可以帮助他人,共同进步。
评测:
以下是洛谷语言测评机环境(原文)
- Pascal:
Free Pascal Compiler version 3.0.4+dfsg-22 [2019/01/24] for x86_64 - C/C++:
gcc version 8.3.0 (Debian 8.3.0-6) - Python 2:
2.7.16, NumPy 1.16.3 - Python 3:
3.7.3, NumPy 1.17.4 - PyPy 2:
Python 2.7.13 (7.0.0+dfsg-3, Mar 24 2019, 15:30:18), PyPy 7.0.0 with GCC 8.3.0 - PyPy 3:
Python 3.5.3 (7.0.0+dfsg-3, Feb 21 2019, 03:51:22), PyPy 7.0.0 with GCC 8.3.0 - Java 8:
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-2-b11) - Node
8:12.14.0 - Ruby:
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux-gnu] - Go:
1.11.6 - Rust:
1.34.2 - PHP 7:
PHP 7.3.11-1~deb10u1 (cli) (built: Oct 26 2019 14:14:18) ( NTS ) Zend Engine v3.3.11, with ZendOPcache v7.3.11-1~deb10u1 - Mono C#:
Mono C# compiler version 5.18.0.240 - Mono VB:
Visual Basic.Net Compiler version 0.0.0.5943 (Mono 4.0.1 - tarball) - Kotlin/Native:
kotlinc-native 1.3.60, Kotlin/Native: 1.3.61 - Kotlin/JVM:
kotlinc-jvm 1.3.61 - Scala
:Scala compiler version 2.11.12 - Haskell:
Glasgow Haskell Compiler, Version 8.4.4 - Perl:
perl 5, version 28, subversion 1 (v5.28.1)built for x86_64-linux-gnu-thread-multi
注意:
- 除 C/C++/Pascal 外的语言,由于常数时间差距,不保证正确算法的执行所用时间和内存能够通过评测而不超出限制。洛谷不为此类语言提供多余的时间和内存限制。
- PyPy 无 NumPy 支持,若需要使用 NumPy,请选择 Python。
- Haskell 环境安装了官网所列举的核心包和常用包。
另附部分语言的编译命令行(不包括源码和二进制文件路径、开启 O2 优化的参数和 gcc 的语言标准限定参数):
- Pascal:
fpc -dONLINE_JUDGE -vnw - C/C++:
gcc -DONLINE_JUDGE -Wall -fno-asm -lm - Java 8:
javac - Go:
go build - Rust:
rustc -W warnings - Mono C#:
mcs -define:ONLINE_JUDGE - Mono VB:
vbnc -define:ONLINE_JUDGE - Kotlin/Native:
kotlinc - Kotlin/JVM:
kotlinc -jvm-target 1.8 -include-runtime - Scala:
scalac -optimize -deprecation -feature -explaintypes -target:jvm-1.8 - Haskell:
ghc -DONLINE_JUDGE -Wall
+有"O2 优化"标签的题目在评测时均会自动开启 O2 优化,题目上传者或者管理员可根据需要自行开启。
提交者在提交时也可以通过勾选“使用 O2 优化”选项开启 O2 优化。
+各个评测状态
- AC:Accept,程序通过。
- CE:Compile Error,编译错误。
- PC:Partially Correct,部分正确。
- WA:Wrong Answer,答案错误。
- RE:Runtime Error,运行时错误。
- TLE:Time Limit Exceeded,超出时间限制。
- MLE:Memory Limit Exceeded,超出内存限制。
- OLE:Output Limit Exceeded,输出超过限制。
- UKE:Unknown Error,出现未知错误。
+常见“我在本地/xxOJ AC了、洛谷却不过”的原因
- Linux 中换行符是'\n'而Windows中是'\r\n'(多一个字符),有些数据在 Windows 中生成,而在洛谷评测机 Linux 环境下评测。这种情况在字符串输入中非常常见。
- 评测系统建立在 Linux 下,可能由于使用了 Linux 的保留字而出现 CE,但在 Windows 下正常。
- Linux 对内存的访问控制更为严格,因此在 Windows 上可能正常运行的无效指针或数组下标访问越界,在评测系统上无法运行。
- 严重的内存泄露的问题很可能会引起系统的保护模块杀死你的进程。因此,凡是使用 malloc(或 calloc,realloc,new)分配而得的内存空间,请使用 free(或 delete)完全释放。
- 数据可能真的有问题。但是如果不止一个人通过了这道题,那最好不要怀疑是数据的锅。
Special Judge
帮助:Special Judge
+用户
任何用户必须遵守洛谷用户协议和洛谷社区规则,方可在站内进行学习交流。违反规则的将按照相关条令进行处理。
- 注册:注册时你需要提供一个合法邮箱。
- 忘记密码:当你忘记密码时,可以通过注册邮箱找回账号。点击这里找回密码。如果你忘记了邮箱,可以向管理员申诉。
- 申诉:当你的账户有异常行为或者被认为存在安全问题时,洛谷会对账号进行冻结。冻结的账号可以解封。你可以进行申诉。
动态等级与用户名颜色
动态等级是根据用户在一段时间内的刷题、社区活跃、打卡、题解、违规情况,按照一定算法得出的结果,该算法不公开。动态等级比较准确的表现了用户一段时间内在洛谷的综合行为。动态等级由 -1 到 4,用户名的颜色为分别对应为棕色、灰色、蓝色、绿色、橙色、红色。管理员的用户名颜色为紫色,不受动态等级影响。
-1棕色 作弊者0灰色 见习用户 即咕值<100的用户1蓝色 普通用户 即咕值在[100,119]的用户2绿色 算法爱好者 即咕值在[120,169]的用户3橙色 刷题健将 即咕值在[170,229]的用户-
4红色 虐题狂魔 即咕值>230的用户新用户的初始动态等级为 0,也就是灰色用户名。用户在洛谷中按照洛谷社区规则使用各项功能,会增加动态等级。如果长时间不使用洛谷或者有违规行为,可能会降级。除非用户有严重违规行为或者在长时间不使用洛谷且未进行实名认证的情况下,一旦用户达到蓝名,则不会掉到灰名。你可以在打卡之后在打卡结果中看到自己用户名的颜色。在犇犇或者讨论中询问颜色名字相关的一些问题将被和谐。
如果用户抄袭题解或非恶意比赛作弊,将降级至棕名及名字旁带有 Cheater 标签,每次查到持续 15 日,并且在 90 日内不得在任何比赛获得排名。 15 日后,变成灰名并清空所有 AC 记录。(即,变为 Unaccepted 100 分状态)。(注:棕名用户是仅次于封号的最严厉警告,如果发生任何违反洛谷社区规则的事情,直接立刻封禁一年。)
动态等级影响洛谷内很多权限,例如创建比赛、团队、提交冷却时间、图床、下载数据等。灰名会有较多的限制。
私信
用户可以通过私信对其他用户留言,私信的内容不会被别人看到。用户可以在设置中设定接受或者不接受特定人群的私信。
通知
系统的通知将会出现在通知里面。包括:其他用户的@、题解审核结果、题目审核结果、举报审核结果、升级通知和其他的通知。