现在全球最大的编程算法竞技网站非CodeForces和AtCoder莫属,想要提升思维能力的最好方法是刷 Atcoder 的题。
简介
AtCoder是日本最大的算法竞技网站,正式创立于2012年6月20日,由AtCoder Inc.运行并维护,其域名为https://atcoder.jp/。(注意http://www.atcoder.jp/ 是其官网)提供编程在线比赛、过往比赛提交、在线评测等服务。
首页
1.顶部菜单栏功能:
名称 功能
Logo图标及Home返回首页
Contest 比赛列表
Ranking 查看用户排名
English 选择语言
个人ID 查看个人信息
2.左侧列表:
Contest
,永久性比赛,其中的practise contest长期进行,此比赛主要目的是熟悉AtCoder的评测系统,不计分不排名。如果你对AtCoder的评测方式一无所知,可在此比赛中练习。
可以在此查看即将举行的比赛并报名。
最近结束的十场比赛,按照时间排序。你可以随意打开任意一场比赛,无需报名即可做题。
Ranking
榜中列举的是活跃用户前十名。如果长时间未参加AtCoder比赛,即使Rating未发生任何变化,账号也会被从Rank榜中移除。
3.右侧列表:
Information
AtCoder基本信息、使用方式及答疑等。
公告栏
通常情况下,在比赛开始的前一天,网站管理员会在此公告栏和CodeForces博客同时发布比赛公告以宣传比赛。
比赛
1.比赛类型:
AtCoder官方比赛分为以下三种:
这是最频繁且最简单的入门赛,通常情况下每月至少举行2次。2019年4月27日(含)之前,每场比赛共4题,时长100分钟,满分1000分且Rating超过1199的选手不计Rating值。自2019年5月19日起改版升级为6道题目,时长不变,满分2100分且Rating值超过1999的选手不计Rating值。改版之后比赛质量和参加人数均有较大突破和提升。由于入门赛题目较简单,因此许多参赛者会选择倒序做题。赛题按照洛谷的难度评级约为红题~蓝题,本类比赛题目具有极强的教育意义,因此建议初学者或参加普及组的选手多参加此比赛以锻炼代码熟练度。
这是AtCoder的常规赛,共4道题目,时长100分钟,满分2100至2700不等,Rating超过2799的选手不计Rating值。特别地,本比赛一般与ABC同时进行,ABC的C、D题与本比赛前两题相同,因此ARC赛题通常编号为CF,ABC编号AD。题目难度中等,赛题按照洛谷的难度评级约为黄题~紫题。按照AtCoder官网所述,此比赛原应比AGC更频繁,但是事实上自2018年9月29日的ARC103后此比赛便再未举行过。
这是AtCoder最优秀的比赛,题目全部聘请特级选手进行原创。通常情况下赛题具有较大的思维难度。每月一般会举行1次,6道题目,时长110分钟至150分钟不等,通常总分5600。所有选手均计Rating值。
2.记分方式
比赛题目一般不设部分分,AC则得全分,否则每次失败提交会罚时5分钟。最终排名以得分倒序统计,得分相同时按时间升序统计。这是最近一道具有部分分的赛题。
同时每次比赛时都会根据排名得出一个表现分,表现分值与名次正相关,与个人Rating无关,但Rating的增长与否由表现分决定。
3.比赛时间
通常情况下,北京时间每周六或周日20时都会举行比赛。相对于CodeForces来说比赛时间更加友好。
4.比赛界面
顶部菜单栏:
名称 功能
Top 比赛信息首页
Tasks 比赛题目列表
Clarifications提问答疑
Submit 提交代码
Results 比赛提交记录及得分
Standings比赛实时排名
Custom Test在线IDE
Editorial 赛后题解,以AGC038的官方题解为例
Discuss CodeForces比赛讨论区
提交记录
提交代码后可在Results>My Submissions>Detail中实时查看每个测试点的运行结果,但不会显示测试点内容。
在比赛结束后可查看他人的提交记录且代码公开。
在排名页面可显示所有人的做题状态,以便控制自己做题的速度,通常情况下比较强的大佬可在25分钟内AK ABC,45分钟ARC,70分钟AGC。
注
1.AtCoder无社区功能,也就是说,在没有比赛进行时,是不可以发讨论寻求帮助的,但是可以在比赛对应的CodeForces宣传界面进行询问,有没有人回复那就是另一回事了。
2.AtCoder评测机可能与其他OJ评测机不同,你的程序输出结束后不进行换行操作(’\n’或endl)可能会导致Wrong Answer。对于较新的题目,此Bug已修复,但是在提交较久远的题目时仍然会出现此情况。在洛谷有许多用户交题时经常因此爆零,请大家注意。洛谷是有多久没有更新AtCoder题库了啊? 提交记录展示:换行AC 不换行WA
5.比赛备用网址
AtCoder的比赛不仅在主站中举行,在比赛副站中也同时进行,账号、提交记录、排名均同步。如果主站加载较慢或显示出错,那我们可以到比赛副站中参加。
比赛副站网址可根据比赛名称构造,例如AGC038的比赛副站为https://agc038.contest.atcoder.jp,其主站https://atcoder.jp/contests/agc038。
Rating系统
不同的Rating等级对应着不同的ID颜色,ID会有八种正常颜色和两种特殊颜色。与CoderForces系统不同,Atcoder初始Rating值为0。
1.正常颜色
颜色 Rating范围
灰色 0~399
棕色 400~799
绿色 800~1199
蓝色 1200~1599
浅紫色1600~1999
黄色 2000~2399
橙色 2400~2899
红色 2900+
2.特殊颜色
未参加任何比赛的ID会呈现黑色,身为网站管理员的账户为紫色。
3.Rating界面展示
个人信息
1.My Profile
查看个人信息,包含全站排名、Rating变化记录、参赛记录等数据。
2.General Settings
可更改昵称、绑定推特账号和CF账号、设置国籍、出生日期、工作地等个人信息。特别注意,登录时使用的用户名只允许更改一次,但比赛时显示的昵称允许修改多次。
3.Change Photo
修改个人头像。
4.Change Password
更改密码。
5.Manage Fav
在他人个人页面可点击五角星进行关注操作,关注后可以在此查看。注意手动同步本地与云端数据。
6.Sign Out
退出登录。
语言切换
为什么要着重说一下AtCoder网站的语言呢?
与其它网站不同,AtCoder英文和日文界面中的功能是不完全相同的,即语言的切换会导致功能的变化。以下为日文网页,此网页与上文中英文首页图片在同一时间截图,我们可以发现,在左侧正在进行中的比赛中多了两场,在即将到来的比赛中多了一场,同时公告栏中的内容更加丰富,这些是针对日本选手特设的比赛和公告,在英文页中无法查看,但是在日文页中我们同样也可以参加。
价值
AtCoder题以思维难度高而著名,大多数难题都没用到什么高级算法,代码量也不大,难点在分析性质上,有的题想一天都想不到怎么做,但一想到关键性质就很简单了。比如AGC040F仅需600B代码,但全场无人AC。它的训练价值在于思维能力。如果你想从一个初级省选选手进化为集训队水平,板刷AtCoder Grand Contest是一个快而有效的方法。AGC的所有题目质量都很高,全部是考验思维的题目。
ABC是给算法初学者参加的,ARC是给有一定算法基础的人参加的。
ABC和ARC都是四道题。ABC的C、D题和ARC的A、B题完全一样。
ARC对标Codeforces Div2,也就是说AtCoder的题目难度低于Codeforces。
想要提升思维能力的最好方法是刷 Atcoder 的题。