oi-wiki
Version:
wiki for OI / ACM-ICPC
249 lines (174 loc) • 25.3 kB
Markdown
## 赛事介绍
OI 竞赛是一项全球的赛事,每年夏天会有世界级竞赛(IOI)举行,大陆地区派出的队伍都是经过层层选拔的。对于大部分选手而言,每年新赛季从 10 月的 NOIP (省级选拔赛)开始。
OI 竞赛中允许使用的语言包括 Pascal(NOI 系列比赛将于 2020 年停止使用 Pascal),C 和 C++。其中 C++ 的版本不同考试有不同的规定。考试题目一般为算法或者数据结构相关的内容,题目形式包括传统题(最常见的规定输入和输出到文件的题目)和非传统题(提交答案题、交互题、补全代码题等等)。
### NOIP
NOIP(National Olympiad in Informatics in Provinces)是全国青少年信息学奥林匹克联赛,顾名思义,是以省为单位排名评奖,奖项含金量高的一般是一二等奖,可以用于获得自主招生资格。
NOIP 分为初赛和复赛两个阶段。初赛会考察一些计算机基础知识和算法基础(笔试),复赛是上机考试。全国使用同一套试卷,但是评奖规则是按照省内情况由 CCF (中国计算机学会)统一指定,并于赛后在 [NOI 官方网站](http://www.noi.cn) 上公布。
### 省选
省队选拔赛是用于选拔各省参加全国赛的代表队,各个省队的名额有复杂的计算公式,一般和之前的成绩和参赛人数有关。省选由各个省自行决定,目前的趋势是很多省份选择联合命题。
### NOI
NOI(National Olympiad in Informatics)是全国信息学奥林匹克竞赛,一般在七月份举行,有现场赛和网络赛。现场赛选手分为四类,其中 A、B、C 类为正式选手。A、B 类对应省队的 A、B 类选手(其中 A 类在计算成绩时会有 5 分加分),C 类名义上是学校对 CCF 做出突出贡献后的奖励名额,D 类是邀请赛选手,如果成绩超过分数线的话,只有成绩证明而没有奖牌(同等分数含金量要低一些)。正式选手前 50 名组成国家集训队,获得保送资格。网络赛报名形式上没有门槛。
### WC
WC(Winter Camp)是全国青少年信息学奥林匹克竞赛冬令营,是每年冬天在当年 NOI 举办地进行的一项活动,内容包括若干天的培训和一天的考试。这项考试主要用于从国家集训队( 50 人)选拔国家候选队( 15 人)。
### APIO
APIO(Asia-Pacific Informatics Olympiad)是亚太地区信息学奥林匹克竞赛,CCF 每年会在五月初举办中国赛区镜像赛。在比赛日前后会有培训活动。
### CTSC
CTSC(China Team Selection Competition)是中国队选拔赛。用来从国家候选队( 15 人)中选拔国家队( 4 人)准备参加当年夏天的 IOI 比赛。
注: APIO 和 CTSC 都是以省为单位报名,一般是按照 NOIP 成绩排序来确定谁会有机会参加 APIO 和 CTSC (二者一般时间上非常接近)。
### IOI
IOI(International Olympiad in Informatics)是国际信息学奥林匹克竞赛,每个国家有四人参赛,比赛一般会有直播。IOI 赛制中每个题目会有 subtask (子任务),每个子任务对应一定的分数。
## 赛制介绍
### OI 赛制
一般的 OI 赛制可以理解为单人在 5 个小时的时间内尝试解决 3 个题。每个题目可以不全部解决,会有多个数据点,题目的分数一般是数据点得分之和。每个数据点还可能会有部分分,就是数据点内部也不需要完全正确才能得到分数。评分方式是在比赛结束后统一评测,只有一次提交机会。
NOIP、NOI、省选都是 OI 赛制
### IOI 赛制
目前国内比赛也在逐渐向 IOI 赛制靠拢。
IOI 赛制可以赛时任意提交,可以即时查看评测结果, APIO、IOI 都是 IOI 赛制
### ACM / ICPC 赛制
在 ACM / ICPC 比赛中一般是三个人使用一台机器,每个题目只有在所有数据点全部正确后才能得到分数。比赛过程中可以有多次提交机会,实时评测并返回结果。比赛排名根据做题数和罚时来评判,罚时是通过题目的用时之和加上错误提交次数乘以一个系数。
### Codeforces (CF) 赛制
[Codeforces](https://codeforces.com) 是一个在线评测系统,定期会举办比赛。它的比赛特点是在比赛过程中只测试一部分数据(pretests),而在比赛结束后返回更多测试点的测试结果(system tests)。比赛时可以多次提交,允许 hack 别人的代码。当然,如果想要 hack ,必须要锁定自己的代码(换言之,无法重新提交该题)。
## 其他国家和地区的 OI 竞赛
### 台湾地区的信息学奥林匹克竞赛(資訊奧林匹亞競賽)
台湾地区把 informatics 翻译成 “资讯” 而非大陆通用的翻译 “信息”。
台湾地区的信息学奥林匹克竞赛赛制与大陆地区类似。
这些比赛并不能统称为 TOI,详情见下文。
两个台湾的 OJ:[TIOJ](http://tioj.infor.org/),[Zerojudge](https://zerojudge.tw/)
#### 1. 区域赛(區域資訊學科能力競賽)
性质类似 NOIP,难度…… 没研究过。题目由各区的师范学院命题。
没有官方拿题目的渠道,主要靠选手自己找各区师范学院的教授拿。如果你想在线提交,TIOJ 上有很多北市赛(好像是台北?)的题。
#### 2. 全国赛(全國資訊學科能力競賽)
那些跟我说 "政治正确" 的人,自己复习下 “九二共识” 和 “一中各表”。
一天笔试,一天机试。机试一场 5 小时 7 题。2016 年的题目,除了一道真 · 签到题,剩下的题目难度和考试范围都在 **提高 - 到 弱省省选 -** 左右。
官方拿题目的渠道戳[这里](http://nhspc.csie.ntnu.edu.tw/2016/ref_exam.php),然而并不提供数据和题解。
在线提交同样左转 TIOJ。LOJ 管理员正在与 TIOJ 方面联系要数据(TIOJ 上的似乎也是民间数据)。
#### 3. 研习营(TOI / 資訊研習營)
[中華民國參加國際資訊奧林匹亞競賽代表隊遴選作業要點](http://toi.csie.ntnu.edu.tw/file/20170906164404.pdf)
(TODO)
#### 4. NPSC
[NPSC 2017 官网](http://contest.cc.ntu.edu.tw/npsc2017/problem.asp)
这个比赛和 OI 没啥关系,这是出给高中生玩的 ACM(从赛制角度来说)。当然,因为面向高中生,所以题目是中文。
这个比赛比较好的一点是题目、数据齐全,然而同样没有题解。
### 二、日本信息学奥林匹克竞赛(日本情報オリンピック)
[官网地址](https://www.ioi-jp.org/) \| [日本选手在 CF 上的介绍](http://codeforces.com/blog/entry/53733)
一般简称为 JOI。**所有的日本题目都提供题目、数据、题解和标程**。
#### 1. 预赛(予選)
每年参加预赛的选手大约有 1000 人。每年的预赛只有一天,3 小时 5 题。难度大约为 普及 - 到 普及 T4- ,考试范围大约为 普及 + 。
显然预赛题都挺水的,所以我不会把预赛题传至 LibreOJ。
预赛题只有日文版。如果你想在线测试,你可以在 AtCoder 提交,例如 [JOI 2016/2017 预赛](https://joi2017yo.contest.atcoder.jp/)。对于之前的年份,网址是类似的。
有点麻烦的是,网址中的年份与实际年份差一年。例如 JOI 2016/2017 预选的比赛时间在 2016 年底,然而网址上是 2017。
**预赛、决赛、春训营的题目、题解、标程,都只有日语**。
#### 2. 决赛(本選)
每年有 60~90 位选手参加决赛。一部分选手从预赛脱颖而出,另一部分是从去年的春令营空降而来。
与预赛一样,每年的决赛只有一天(与预赛不同,正式比赛前有练习赛),4 小时 5 题。 难度大约为 普及 到 提高 + ,考试范围大约为 提高。
**自 2016/2017 赛季起,JOI 决赛同时提供日语与英语题目,还有场外同步赛。**以前的题目只有日语。
赛后,如果你想在线测试,你可以在 LibreOJ 提交。Planet6174 正在翻译近年的决赛题,目前上传了近三年的决赛题(比心心)
你也可以选择在 AtCoder 提交,例如 [JOI 2016/2017 决赛](https://joi2017ho.contest.atcoder.jp/)。决赛网址中的年份与实际年份相同,不用像预赛那样麻烦。
题外话:上面的那位日本选手说,JOI 决赛包吃包住包路费,**国家补贴不花选手钱**,相比之下,NOI 系列比赛就显得 [手动和谐] 了。
#### 3. 春训营(春季トレーニング合宿 / JOI Spring Camp / JOISC)
每年有 14~20 位选手进入春训营。春训营中的竞赛共有 4 天(外加一天练习赛),每天 5 小时 3 题。
考试范围大约为 **提高 + 到 省选 -**,难度大约为 **省选**(本蒟蒻很菜,大佬们觉得它是啥难度啊)。春训营总分前四的选手将代表日本参加 IOI。
**自 2016/2017 赛季起,JOI 春训营的题目同时提供日语与英语。**(有没有场外同步赛啊?本蒟蒻没找到啊)以前的题目只有日语。
翻译…… 坑填了一半。你现在要提交的话可以去 AtCoder ,例如 [JOI 春训营 2017](https://joisc2017.contest.atcoder.jp/)。
本蒟蒻做的感觉是大多是思维难度高,代码能力要求并不算高。另外,数据结构最难只考到树状数组和线段树。至于平衡树,考察内容保证 set 之类的容器可做而没必要手写 Treap/Splay。不过其中很多题用高级数据结构做会更快。
#### 4. 公开赛(通信教育 / JOI Open Contest)
通信教育的汉语翻译差不多是” 信息学 “或者” 資訊科 “的意思。春训营结束后,公开赛是给 IOI 日本队的选手练兵的,与日本队的选拔无关。
JOI 公开赛是在线竞赛,实行完整的 IOI 赛制,可以实时提交,分数取多次提交中的最高分 Blahblahblah
**JOI 公开赛的题目、题解都同时提供日语和英语。**
然而,公开赛的题目并没有在线提交的地方(也可能是没找到?)。
### 三、俄罗斯:олимпиадная информатика
[官网](http://inf-olymp.ru/) \| [在线提交地址](https://contest.yandex.ru/roiarchive/) \| [能下 Data & Solution 的真官网?](http://neerc.ifmo.ru/school/archive/index.html)(感谢 @Chiaki 提供的连接)
一般简称为 ROI。
### 四、其他
**韩国:한국 정보 올림 피아드**
[官网地址](https://www.digitalculture.or.kr/koi/) \| [试题地址](https://www.digitalculture.or.kr/koi/selectOlymPiadDissentList.do) \| [在线提交地址](https://www.acmicpc.net/)
一般简称为 KOI。
**加拿大:Canadian Computing Competition (CCC) and Canadian Computing Olympiad (CCO)**
<https://cemc.math.uwaterloo.ca/contests/past_contests.html#ccc>
**德国:BWINF: Bundesweit Informatiknachwuchs fördern**
<https://www.bwinf.de/>
**印度:INOI**
<https://www.iarcs.org.in/inoi/archives.php>
**捷克:Matematická olympiáda – kategorie P(它把 OI 划分到了 MO 里……)**
<http://mo.mff.cuni.cz/p/archiv.html>
**罗马尼亚:Olimpiada Nationala de Informatica**
<http://olimpiada.info/>
**英国:British Informatics Olympiad**
<http://www.olympiad.org.uk/>
## 其它大洲级 OI 竞赛
### BalticOI
| 年份 | 地址 | 题面 | 数据 | 题解 |
| ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ------- | ------- |
| 2018 | <https://boi2018.progolymp.se/tasks/> | $√$ | $√$ | $√$ |
| 2017 | <http://www.boi2017.org/> | $√$ | × | × |
| 2016 | <https://www.cs.helsinki.fi/group/boi2016/tasks.shtml> | $√$ | $√$ | $√$(见下) |
| 2015 | <http://www.boi2015.mimuw.edu.pl/305_Tasks> | $√$ | $√$ | $√$(见下) |
| 2014 | <http://www.boi2014.lmio.lt/tasks.html> | $√$ | $√$ | × |
| 2013 | <http://boi2013.informatik-olympiade.de/?page_id=169#tasks> | $√$ | $√$ | $√$ |
| 2012 | <http://www.boi2012.lv/tasks> | $√$ | $√$ | $√$ |
| 2011 | <http://www.boi2011.dk/> | $√$(见下) | $√$ | $√$ |
| 2010 | <http://kodu.ut.ee/~ahto/boi/2010/?item=boi.tasks.0> <br> <http://kodu.ut.ee/~ahto/boi/2010/?item=boi.tasks.1> <br> <http://kodu.ut.ee/~ahto/boi/2010/?item=boi.tasks.2> <br> <http://kodu.ut.ee/~ahto/boi/2010/?item=boi.tasks.tests> <br> <http://kodu.ut.ee/~ahto/boi/2010/?item=boi.tasks.sol> | $√$ | $√$ | $√$ |
| 2009 | <http://www.csc.kth.se/contest/boi/tasks.php> | $√$ | $√$ | $√$ |
| 2008 | <http://b08.oi.edu.pl/> | $√$ | $√$ | × |
| 2007 | <http://www.boi2007.de/en/tasks> | $√$ | $√$ | $√$ |
| 2006 | <https://www.cs.helsinki.fi/group/boi2006/> | $√$ | $√$ | × |
| 2005 | <http://ims.mii.lt/olimp/?lang=lt&sk=baltijos&id=320410> | $√$ | $√$ | × |
| 2004 | <http://www.boi2004.lv/tasks.htm> | $√$ | $√$(见下) | $√$(见下) |
| 2003 | <http://kodu.ut.ee/~ahto/boi/2003/?item=boi.tasks.0> <br> <http://kodu.ut.ee/~ahto/boi/2003/?item=boi.tasks.1> <br> <http://kodu.ut.ee/~ahto/boi/2003/?item=boi.tasks.2> <br> <http://kodu.ut.ee/~ahto/boi/2003/?item=boi.tasks.tests> | $√$ | $√$ | $√$(见下) |
| 2002 | <http://ims.mii.lt/olimp/senas/english/boi2002/tasks.htm> | $√$ | $√$ | $√$ |
| 2001 | <http://ims.mii.lt/olimp/?lang=lt&sk=baltijos&id=320480> | $√$ | $√$ | $√$ |
| 2000 | <http://ingforum.haninge.kth.se/BOI00/boi00.html> | $√$ | $√$ | $√$ |
1995 ~ 2004 年的 BalticOI 题面、数据、题解都可以在 <http://ims.mii.lt/olimp/uzdav/boi_ar/> 下载
1995 ~ 2016 年:<http://www.lmio.mii.vu.lt/?p=viewarticle&id=292>
### BalkanOI
| 年份 | 地址 | 题面 | 数据 | 题解 |
| ---- | ----------------------------------------------------------------------------------------------------------------- | --------------------- | --- | --- |
| 2018 | <http://boi2018.ro/> | $√$ | $√$ | $√$ |
| 2017 | <del><http://www.boi2017.md/></del> <br> <https://www.acmicpc.net/category/detail/1776> | $√$ | × | × |
| 2016 | <http://boi2016.euc.ac.cy/welcome-to-boi-2016/competition/tasks/> | $√$ | $√$ | $√$ |
| 2015 | <del><http://www.boi2015.uni-ruse.bg/competition/tasks></del> <br> <https://www.acmicpc.net/category/detail/1443> | $√$ | × | × |
| 2014 | <http://boi2014.tubitak.gov.tr/index.html%3Fq=tasks.html> | $√$ | × | × |
| 2013 | <https://github.com/f2lk6wf90d/boi2013-tasks> | $√$ | × | × |
| 2012 | <https://boi2012.dms.rs/> | $√$(官网没有 BZOJ 却齐全 ?!) | $√$ | ? |
| 2011 | <http://www.boi2011.ro/boi2011/?pagina=probleme> | $√$ | $√$ | $√$ |
| 2010 | ? | ? | ? | ? |
| 2009 | <http://www.cs.org.mk/boi2009/tasks.html> | $√$ | $√$ | $√$ |
| 2008 | <http://www.cs.org.mk/boi2008/tasks.htm> | $√$ | × | × |
| 2007 | <http://boi2007.edu.md/> (Web Archive 有存档) | $√$ | $√$ | $√$ |
| 2006 | <http://www.boi2006.com/> (Web Archive 有存档) | $√$ | × | × |
| 2005 | <https://www.acmicpc.net/category/detail/841> | $√$ | ? | ? |
| 2004 | <http://www.boi2004-plovdiv.org/> <br> <https://www.acmicpc.net/category/detail/1122> | ?(韩国人有两题) | ? | ? |
| 2003 | <http://students.info.uaic.ro/~boi2003/explore.php> | ?(BZOJ 有一题) | ? | ? |
| 2002 | ? | ?(BZOJ 有一题) | ? | ? |
| 2001 | <http://www.mash.gov.al/ministria_eng/events/boi2001/homea.html> (Web Archive 有存档) | $√$ | × | × |
| 2000 | <http://ii.edu.mk/boi2000> (Web Archive 有存档) | $√$ | $√$ | × |
| 1999 | <http://www.cs.uoi.gr/~stavros/boi99/boi99.htm> | $√$ | × | × |
| 1998 | <http://www.ioi99.org.tr/BOI/index.html> (Web Archive 有存档) | $√$ | $√$ | × |
| 1997 | <https://www.acmicpc.net/problem/7093> (韩国人真可怕,这么全) | $√$ | × | × |
### European Junior Olympiad in Informatics
<https://ejoi.org/>
### Junior Balkan Olmpiad in Informatics
<https://mendo.club/Training.do?cid=2>
### CEOI
| 年份 | 地址 | 题面 | 数据 | 题解 |
| --------- | ------------------------------------------------------------------------ | --- | --- | --- |
| 2011~2017 | <http://ceoi.inf.elte.hu/tasks-archive/> | $√$ | $√$ | $√$ |
| 2010 | <http://ceoi2010.ics.upjs.sk/Contest/Tasks> | $√$ | $√$ | $√$ |
| 2009 | <http://www.ceoi2009.ro/view_page.php?id=24> | $√$ | $√$ | $√$ |
| 2008 | <http://www.ceoi2008.de/en/contest> | $√$ | $√$ | $√$ |
| 2007 | <https://www.fi.muni.cz/about/events-and-contests/ceoi/> | $√$ | $√$ | $√$ |
| 2006 | <http://www.hsin.hr/ceoi2006/> | $√$ | $√$ | $√$ |
| 2005 | <http://ceoi.inf.elte.hu/ceoi2005/> | $√$ | $√$ | $√$ |
| 2004 | <https://www.oi.edu.pl/old/php/ceoi2004.php?module=show&file=tasks> | $√$ | $√$ | $√$ |
| 2003 | <http://www.ceoi2003.de/www/index.php?action=file&cathegory=competition> | $√$ | $√$ | $√$ |
| 2002 | <http://www.ics.upjs.sk/ceoi/Documents.html> | $√$ | $√$ | $√$ |
| 2001 | <http://ceoi.inf.elte.hu/ceoi2001/> (Web Archive 有存档,下同) | $√$ | × | × |
| 2000 | <http://ceoi.ubbcluj.ro/internet/down.html> | $√$ | $√$ | × |
| 1999 | <http://www.fi.muni.cz/ceoi/> | $√$ | $√$ | $√$ |
| 1998 | <http://pubwww.srce.hr/hsin/ceoi98/> | $√$ | $√$ | $√$ |
| 1997 | <http://www.oi.edu.pl/ceoi97/> | $√$ | ? | ? |
| 1996 | ? | ? | ? | ? |
| 1995 | <http://ceoi.inf.elte.hu/95/> | $√$ | × | × |
| 1994 | <http://ceoi.inf.elte.hu/94/> | $√$ | × | × |
### Nordic Olympiads in Informatic
<https://github.com/nordicolympiad>