前言
刚刚进入洛谷时需要谨慎,尽快熟悉环境,不要随意跟风。
此文是为了帮助刚进入洛谷的新手入门,如有问题请在评论区提出。
本人花了很长时间写了此文章,不要抄袭,谢谢!
$$\mathbb{\text{洛谷新手指南}}$$
$$\mathbb{\text{基础部分}}$$
$$\tiny\text{本文内容较多,如果是想查找某一个特定的词语,可以在浏览器中使用 Ctrl + F 进行页面内搜索。}$$
打开洛谷主站,我们可以看到如下的界面:
Part 1:题库
1.什么是题库:
版面分为了:搜索区与做题区。
我们可以在下方相对较大的做题区里做题,比如做P1000:
最左边的图案有三种情况:
-
√
代表已做对 -
-
代表没有尝试过 -
×
代表尝试过但没有做对
以 P
开头的编号为题目编号。 (一些来自其他地方的题目会是其他字符串)
蓝色的字为题目名称,点进去即可做题。
靠后的 入门
代表难度,分别有:
入门 普及- 普及/提高- 普及+/提高 提高+/省选- 省选/NOI- NOI/NOI+/CSTC
最后面的小条为通过率,把鼠标悬浮在上面即可查看。
点击页面左下角的多选,可以复制题目/题目链接/两者都有到剪贴板里,方便分享和转存。
2.做题 点击题目名称后,自动跳转到做题页面:
-
上方为题目编号和题目名。
-
点击加入收藏即可将此题加入主站上的任务列表里。
-
右上角为时空限制和提交通过数。
-
点击提交记录所有人的程序与结果,详情请看Part 4。
-
点击查看题解即可查看这道题别的同学的解法与代码(不能抄袭!)
-
标签为这道题的来源和算法标签,点击来源/算法标签可以查询其他同算法/来源的题。
-
相关讨论为其他同学对这道题的一些疑问和解答,或者是一些对你的启发。
-
推荐题目为与此题考察算法类似的题。
3.提交 点击提交答案后,自动到达提交答案界面:
-
点击自动选择语言即可选择语言。
-
点击开启O2优化即可开启O2优化,加快程序(个别程序除外)
-
在下面的代码框写好程序后,即可提交。
提交后,会出现评测页面:
测试点信息为每一个测试点的情况,有:
AC WA CE RE TLE MLE OLE UKE
右上角为你使用的语言、代码长度等信息。
源代码可以查看你的代码,方便复制。
4.搜索题目 在搜索框里输入搜索的题目名/题目编号即可。
同时,也可以利用高级搜索,搜索各种来源/算法的题目,甚至可以搜索题目内容。
特别的,洛谷也支持 RemoteJudge
里的题目(即 Codeforces
等大型网站内的题目),也可以在高级搜索里找到。
还可以点击 清除所有筛选条件
来恢复初始状态(搜索区为空)。
5.排序题目 在题目区的上方有一排表头,这个可以用来排序:
我们可以点击后面的三角形以做到升/降序的排序。
-
点击题号后面上三角把编号升序排序,反之亦然。
-
点击题目名称上小三角把题目名拼音/英文的首字母升序排序,反之亦然。
-
点击
显示算法
即可切换显示来源/算法。 -
点击难度上小三角会给题目难度升序排序(同样难度等级的题目也会进行排序),反之亦然。
6.Q&A
Q:搜索完后发现一片空白怎么办?
A:那是因为没有搜索到,换个词语吧。
Q:为什么UVA/ATcoder 的题目交不了?
A:由于AT最近改变了接口,洛谷也在处理,UVA现在很卡(我这边是这样的),可能较慢。
Q:CF/其他RMJ(RemoteJudge)为什么要绑定账号?
A:由于洛谷提交使用的是公共账号,如果想要绑定自己的账号请查看进阶指南。
Part2:题单
1.什么是题单:
同题目列表,也分为了搜索区和题单区。
最左边的为题单编号,从 100
开始。
蓝色的字为题单名称,点进去即可看题单+做题。
完成度同通过率,将鼠标悬浮在上面即可查看。
特别的,如果你全对了一个题单,完成度会变绿。
-
点击收藏题单即可收藏此题单。
-
点击转存题单即可创建一个和此题单一样的私有题单。
-
题单分为三种:
官方题单、个人私有、个人精选(还有团队题单,现在不提到)
。 -
点击题目列表即可做题。
进入到了题目列表,界面和题库界面除没有搜索框以外一样,可参考上一节。
2.搜索题单
-
点击上方搜索框即可搜索题单。
-
点击官方精选或用户分享即可切换模式。
在用户分享模式下,与官方精选大同小异,只是多了创建者模块。
3.Q&A
Q:搜索完题单后发现一片空白怎么办?
A:同题库,那是因为没有搜索到,换个词语吧。
Q:题单为什么做完了但是通过率没有变绿?
A:那是因为网络+服务器延时,一小时后大概好了。
Q:如何看到收藏的题单/自己创建的题单?
A:这个属于进阶功能,请到进阶部分查看。
Part3:比赛
1.什么是比赛:
-
最左边的是比赛状态,分别有:
未开始、进行中、已结束
。 -
点击比赛名称即可报名/参加/查看已结束比赛的题目。
-
最右边的举办者为个人/团队,有关于此功能现在不提到。
在主站上,可以直接找到近期比赛,与比赛一栏里相似。
比赛分为5种赛制:IOI、OI、乐多、ACM、Codeforces
。
OI
传统的赛制,但是全国统一的赛制,提交完答案案后不可查看结果。
IOI
最不刺激的的赛制,提交完答案后直接出现结果。
乐多
赛制为洛谷独创的赛制,比赛时可以看到结果。每题得分计算为: $\text{评测得分}\times0.95^{(\text{本题提交次数}-1)}$,最低扣到原来的 $70\%$ 为止。
ACM
赛时可以看到结果,必须 AC 了这道题目才会计分,会记录 AC 这道题的耗时,每次失败会加 20 分钟的罚时。通过题目多的排名在前;通过数一样的耗时少排名靠前。
COdeforces
赛制现已下线,做一个简单介绍(不感兴趣者可以跳过):
第一部分:Div.1和Div.2比赛的赛制——CF赛制
Codeforces最出名的当然是CF赛制啦!在一场采用CF赛制的比赛中,每道题拥有一个满分,一般来说,满分与题目难度成正比,题目难度按顺序递增,例如,一场比赛的满分分布可能是500-1000-1500-1500-2250-3000。
然而,每道题的分数不是不变的,随着比赛时间的流逝,分数会逐渐减少,例如,一道500满分的题目,在00:01通过pretest的分数一般为498,在00:02通过pretest的分数一般为496。并且,每一次错误的提交还会扣除您50分的得分。
举一个例子,一道500分的题目,在第三分钟通过pretest,但是有一次错误的提交,那么得分为494-50=444分(494为这道题在00:03时的分数,50分为一次错误提交的罚分)。
重点:上面为什么说的是通过pretest而不是AC呢,因为CF赛制的题目会有两套数据,一套称为Pretest,另一套称为System Test,当比赛进行时,您的提交将会用Pretest测评,若通过所有Pretest,则会显示 $\color{green}\text{Pretests passed}$,否则显示错误的Pretest编号和错误类型,例如 $\color{red}\text{Wrong answer on pretest 3}$,并且还会被罚50分(如果编译错误则不会罚分,错在第一个测试点也不会被罚分)。
当您的一道题目 $\color{green}\text{Pretests passed}$后,您可以单击题目列表中那到题目后面的“锁”的符号,这称为锁题,当您锁了一道题后,您就不能再次提交该题了,但是您可以查看同一个房间中其它人本题的代码,若找到了其他人代码中的错误,您可以向他发起hack,即提交一组测试数据使得他的代码错误(例如Wrong answer等等)。一次成功的hack可以使您获得100分,不成功则扣掉50分。
房间:参加比赛的所有用户大约每40各人组成一个房间,只有在房间里的用户才能互相hack。
发起hack的方式是:双击您的房间的排行榜中的任何一个绿色数字,再单击通过的提交的编号查看代码,如果找到了错误,那么您可以单击hack it!,然后输入数据或者上传数据生成器,单击hack即可。
注意:锁了的题不能再提交,也就是说如果您锁了一道题,但是您的程序被hack了,那么您就没有补救的机会了。所以,叉人有风险,锁题需谨慎。
比赛结束后不久就会进行System Test,就是将您已经通过Pretest的程序再测试一套数据,这套数据包括所有比赛中成功hack的数据(所以在Codeforces上有些题目可能拥有上百个测试点),只有您的程序通过了System Test,您的程序才是真正通过了,否则称为Failed System Test(FST),这道题也就不得分了。
(摘自Codeforces游玩攻略)第二部分:Div.3和Educational比赛的赛制——拓展ACM-ICPC赛制
拓展ACM-ICPC赛制是指,每次提交立即评测出结果,排名按照通过题数排(这意味着每道题权重相同),题数相同则按总时间排,总时间指的是每道题第一次通过的时间之和+错误的提交次数×10分钟。
当然Codeforces的核心——hack还是会出现的,每场拓展ACM-ICPC赛制的比赛结束后,会有12个小时的时间,让您随意查看、hack每个人的提交,这12个小时结束后,所有程序还会测试一遍成功的hack的数据,得到的结果才构成最终的排名。
比赛类型:比赛分为三类:官方比赛、团队公开赛、个人公开赛
。
官方比赛为洛谷官方出的比赛。
团队公开赛/个人公开赛为团队/个人出的公开赛。
比赛还分为 Rated
赛和 非Rated
赛和 洛谷月赛
。
Rated
赛为可以增加估值的比赛。非Rated
赛为不可以增加估值的比赛。洛谷月赛
为洛谷官方团队/受邀请的团队出的月赛,会附带收费讲评。
2.Q&A
Q:怎么创建团队/个人公开赛?
A:创建公开赛需要一定的编程水平,且需要强大的后勤,属于进阶指南。
Q:在比赛里作弊会怎么处理?
A:如果 Rated
赛或 非Rated
赛里作弊,可能会被禁止加入团队/损坏在社区里的名声/棕名等。如果在 洛谷月赛
里作弊,会被立即处以棕名处罚,严重者可封号(撤销进入主站权限)。
Q:是所有人都可以创建公开赛吗?
A:这属于进阶指南,不是所有人都可以,恶意创建公开赛一次即可封号,公开赛会由管理员进行仔细审核才可过关。
Q:创建公开赛有什么奖励吗?
A:这也属于进阶指南,创建公开赛会增加估值/提高社区知名度/提高个人能力等,如果创建 洛谷月赛
会获得一定数量的金钱报酬(2000~4300RMB)。
Q:为什么xxx可以创建公开赛?为什么……
A:请到:新版公开比赛要求查看。
Part 4: 记录
1.什么是记录?
版面分为搜索区和记录区。
在下方的记录区,可以看到:
-
名称
-
日期及时间
-
评测是否通过+分数
-
题目名
-
使用的语言/代码用时/代码空间/是否开启 O2
可以点击评测状态来查看此题的评测结果,具体详见 Part1.3。
搜索区可以搜索:
-
查找的题目编号
-
查找的用户名/uid(用户 ID)
-
记录状态
输入题目编号即可查看所有该题目的评测记录。
输入用户名/uid即可查看所有该用户的评测记录。
2.为什么我看不到某些人的代码?
特别的,您需要打开代码公开计划(已经默认打开) 且 该题目分数 $>60$才可查看别人的代码。
如果别人不参与代码公开计划,那么无法看到别人的代码。
如果别人打开了完全隐私保护,那么无法查看其评测记录列表,且在题目里显示匿名用户。
3.Q&A
Q:如何设置代码公开计划?
A:属于进阶指南,可在个人设置里找到。
Q:打开完全隐私保护是否可以抄袭题解了?
A:想多了。。。洛谷可以运行反作弊系统,将对比所有代码与题解,不会放过一个。所以不要抄袭题解!
Q:什么是 uid?
A:uid 是用户编号,比如我的 uid 是 334586,同时属于进阶指南。
Part5:讨论
1.什么是讨论?
2.如何查看别人的讨论?
每一条讨论,分别有:
-
发帖人
-
是否置顶
-
回复数
-
讨论名
-
讨论版块及时间
-
最新回复及时间
置顶的帖子会有专门标识,一般为:
-
洛谷官方通知
-
公开赛各类通知
-
日报
-
其他置顶内容
点击讨论名即可进入讨论。
3.如何回帖?
$$\tiny\text{由于保护他人用户名,故将其涂黑。}$$
在帖子的页面,点击 回复帖子
即可回帖。
在下面的输入框里,可以用 Markdown
和 $\LaTeX$ 来作为输入格式,具体详见关于 LaTeX 的相关内容
输入内容输入验证码(点击验证码图片即可更换),即可发帖。
4.如何发帖?
必须在讨论列表里选择板块(甚至可以是一个题目作为板块)
选择板块后会看到页面最底部有和回帖几乎一样的输入框,和回帖基本一样。
5.Q&A
Q:在洛谷是什么都可以讨论的吗?
A:不可讨论含有政治敏感、色情、人身攻击等根据常理无法接受的内容,具体详见洛谷讨论区规范。
Q:在输入完后可以点击刷新吗?
A:不可以,如果点击刷新输入内容将消失
Q:如何@人?
A:例如@159号程序员 xxx
,人名和说的话之间有空格。
Part6:参考文献及鸣谢
-
感谢@ezoixx130的Codeforces快速精通 写到了
Codeforces
的赛制。 -
感谢@I_am_gone__、@rui_er、@clock钟0622、@M652、@LoveMC、@清清老大、@demonred、@听取MLE声一片、@蒟蒻JJA、@Andy_chen、@rui_er的宝贵建议。
$$\tiny \text{(以上排名不分先后)}$$
以上就是 $\mathbb{\text{洛谷新手指南-基础部分}}$ 的全部内容了,如果有问题欢迎在下方留言哦!
$\tiny 2020,\text{洛谷}\ \text{Developed by 159号程序员}$