OI 赛事与赛制

赛事介绍

OI 竞赛是一项全球的赛事,每年夏天会有世界级竞赛(IOI)举行,参赛选手大多都经过层层选拔。对于大部分选手而言,每年新赛季从 10 月的 NOIP(省级选拔赛)开始。

OI 竞赛中允许使用的语言包括 Pascal(NOI 将于 2020 年停止使用 Pascal,NOIP 将于 2022 年停止使用 Pascal),C 和 C++。其中 C++ 的版本不同考试有不同的规定。考试题目一般为算法或者数据结构相关的内容,题目形式包括传统题(最常见的规定输入和输出到文件的题目)和非传统题(提交答案题、交互题、补全代码题等等)。

NOIP

NOIP(National Olympiad in Informatics in Provinces)是全国青少年信息学奥林匹克联赛,顾名思义,是以省为单位排名评奖,对于大部分高校来说,获得提高组省一等奖可以用于获得自主招生资格。

NOIP 分为初赛和复赛两个阶段。初赛会考察一些计算机基础知识和算法基础,复赛是上机考试,也分提高组和普及组(2018 年于上海试点入门组),时间上一般是 11 月的第二个周末,周六上午提高组 1 试 8:30-12:00(3.5h,共 3 题),下午 14:30-18:00 普及组(3.5h,共 4 题),周日上午提高组 2 试 8:30-12:00(3.5h,共 3 题)。全国使用同一套试卷,但是评奖规则是按照省内情况由 CCF(中国计算机学会)统一指定,并于赛后在 NOI 官方网站 上公布。各省的一等奖分数线略有不同。

目前 NOIP 已经于 2019 被 CCF 取消。

CSP J/S

CSP (Certified Software Professional Junior/Senior) 是继 NOIP 在 2019 年被取消之后 CCF 开设的非专业级软件能力认证,面向全年龄段。 具体赛制、时间基本同 NOIP 一致。在部分地区,CSP 2019 设有小学组。

目前暂不清楚获得 CSP 认证对自主招生资格的获取是否有帮助。

省选

省队选拔赛是用于选拔各省参加全国赛的代表队,各个省队的名额有复杂的计算公式,一般和之前的成绩和参赛人数有关。省选由各个省自行决定,目前的趋势是很多省份选择联合命题。通常来讲,NOIP 分数需要在省选中占一定比例。根据规则,初中选手只能选拔成为 E 类选手,不参加 A、B 类选拔。A 类选手 5 人(4 男一女),其他选手根据给定名额和所得分数依次进入 B 队。一个学校参加 NOI 的名额不超过本省 A、B 名额总数的三分之一(四舍五入),得分最高且入选 A 队的女选手不占该比例。(简称 ⅓ 限制或 ⅓ 淘汰)

NOI

NOI(National Olympiad in Informatics)是全国信息学奥林匹克竞赛,一般在七月份举行,有现场赛和网络赛。现场赛选手分为五类,其中 A、B、C 类为正式选手,D、E 类选手为邀请赛选手。A、B 类对应省队的 A、B 类选手(其中 A 类在计算成绩时会有 5 分加分),C 类名义上是学校对 CCF 做出突出贡献后的奖励名额,D 类名义上是个人对 CCF 做出突出贡献后的奖励名额(基本为大额捐款),E 类选手为初中组选手,如果成绩超过分数线的话,只有成绩证明而没有奖牌(同等分数含金量要低一些)。正式选手前 50 名组成国家集训队,获得保送资格。网络赛报名形式上没有门槛。

WC

WC(Winter Camp)是全国青少年信息学奥林匹克竞赛冬令营,是每年冬天在当年 NOI 举办地进行的一项活动,内容包括若干天的培训和一天的考试。这项考试主要用于从国家集训队(50 人)选拔国家候选队(15 人),但是前一年 NOIP 取得较好成绩的选手也可以参加(不参与选拔)。

APIO

APIO(Asia-Pacific Informatics Olympiad)是亚太地区信息学奥林匹克竞赛,CCF 每年会在五月初举办中国赛区镜像赛。在比赛日前后会有培训活动。

CTS

CTS(旧称 CTSC, China Team Selection Competition)是中国队选拔赛。用来从国家候选队(15 人)中选拔国家队(6 人)准备参加当年夏天的 IOI 比赛,其中正式选手 4 人,替补选手 2 人,但是和 WC 一样的,前一年 NOIP 取得较好成绩的选手也可以参加(不参与选拔)。

注:APIO 和 CTS 都是以省为单位报名,一般是按照 NOIP 成绩排序来确定谁会有机会参加 APIO 和 CTS(二者一般时间上非常接近)。

IOI

IOI(International Olympiad in Informatics)是国际信息学奥林匹克竞赛,每个国家有四人参赛,比赛一般会有直播。IOI 赛制中每个题目会有 subtask(子任务),每个子任务对应一定的分数。

学科营

PKU

  • 北京大学信息学冬季体验营(PKUWC)在冬令营前后举行。
  • 北京大学信息学体验营(PKUSC)一般在六月份在校内举行。由于在学校机房比赛,机房环境是 Windows,比赛系统是 OpenJudge。
  • 北京大学中学生暑期课堂(信息学)在暑假举行,面向高二年级理科学生。

赛制介绍

OI 赛制

一般的 OI 赛制可以理解为单人在 5 个小时的时间内尝试解决 3 道题。每个题目可以不全部解决,会有多个数据点,题目的分数一般是数据点得分之和。每个数据点还可能会有部分分,就是数据点内部也不需要完全正确才能得到分数。评分方式是在比赛结束后统一评测,只有一次提交机会。 NOIP、NOI、省选都是 OI 赛制。

IOI 赛制

目前国内比赛也在逐渐向 IOI 赛制靠拢。 IOI 赛制可以赛时任意提交,可以即时查看评测结果,APIO、IOI 都是 IOI 赛制。

ACM/ICPC 赛制

在 ACM/ICPC 比赛中一般是三个人使用一台机器,每个题目只有在所有数据点全部正确后才能得到分数。比赛过程中可以有多次提交机会,实时评测并返回结果。比赛排名根据做题数和罚时来评判,罚时是通过题目的用时之和加上错误提交次数乘以一个系数。在 ACM 相关赛事中,选手允许带纸质资料。

参见 ICPC/CCPC 赛事与赛制

Codeforces (CF) 赛制

Codeforces 是一个在线评测系统,定期会举办比赛。它的比赛特点是在比赛过程中只测试一部分数据(pretests),而在比赛结束后返回完整的所有测试点的测试结果(system tests)。比赛时可以多次提交,允许 hack 别人的代码(此处 hack 的意思是提交一个测试数据,使得别人的代码无法给出正确答案)。当然,如果想要 hack,必须要锁定自己的代码(换言之,比赛时无法重新提交该题)。

其他国家和地区的 OI 竞赛

美国:USACO

官网地址: https://www.usaco.org/

USACO 或许是国内选手最熟悉的外国 OI 竞赛(可能也是中文题解最多的外国 OI 竞赛)。
每年冬季到初春,USACO 会每月举办一场网络赛。一场比赛持续 3\sim5 个小时。
根据官网的介绍,USACO 的比赛分成这 4 档难度(2015~2016 学年之前为 3 档):

  • 铜牌组,适合编程初学者,尤其是只学了最最基础的算法(如:排序,二分查找)的学生。
  • 银牌组,适合开始学习基本的算法技巧(如:递归,搜索,贪心算法)和基础数据结构的学生。
  • 金牌组,学生会遇到更复杂的算法(如:最短路径,DP)和更高级的数据结构。
  • 铂金组,适合有着扎实的算法设计能力的选手,铂金组可以帮助他们以复杂且更开放的问题来挑战自我。

在国内,目前 USACO 题目最齐全的是洛谷。

波兰:POI

官网: https://oi.edu.pl/
官方提交地址: https://szkopul.edu.pl/p/default/problemset/

POI 是不少省选选手最常刷的外国 OI 比赛。
根据(已经凉凉的) http://main.edu.pl/en/ 的描述,POI 的流程如下:

  • 第一轮:五题,网络赛,公开赛。
  • 第二轮:包含一场练习赛,和两场正式比赛。
  • 第三轮:赛制同上。
  • ONTAK:POI 训练营(类似国内的集训队)

你可能还听说过 PA。PA 的大意是“算法大战”(我也不知道为啥它叫这名字)。

目前在国内 OJ 中,POI 题目最全的是 BZOJ。

克罗地亚:COCI

官网地址: http://www.hsin.hr/coci/
(有时候英文版的更新会延迟,克罗地亚语版本: http://www.hsin.hr/honi/

难度跨度很大的比赛,大约是从普及 - \sim 省选 -。以往 COCI 所有的题目均提供题目、数据、题解和标程,然而从 2017 年底之后,COCI 的题解和标程就断更了(不是没有英语版翻译,而是连克罗地亚语的版本都没有)。2019-2020 赛季重新开始更新题解和标程。

洛谷、BZOJ 和 LibreOJ 都有少量的 COCI 题目。

日本:JOI

官网地址: https://www.ioi-jp.org/
日本信息学奥赛(日本情報オリンピック)一般简称为 JOI。JOI 所有的题目都提供题目、数据、题解和标程。近两年的 JOI 决赛和春训营提供了英语题面,但并没有英语题解。历年的 JOI Open 都提供了英语版题面和题解。绝大部分 JOI 题可以左转 AtCoder 提交。

JOI 的流程:

  • 预赛(予選)
  • 决赛(本選/JOI Final)
  • 春训营(春季トレーニング合宿/JOI Spring Camp/JOISC)
  • 公开赛(通信教育/JOI Open Contest) 预赛难度较低,自 2019/2020 赛季起,预赛分为多轮。 目前 LibreOJ 和 BZOJ 有近些年的 JOI Final、JOISC 和 JOI Open 的题目。 JOI Final 的难度在提高 - \sim 提高 + 左右。JOISC 和 JOI Open 的题目的难度在提高 \sim NOI - 不等。 你可以在 JOI 官网或者 AtCoder 上找到更多的 JOI 题(日文题面)

俄罗斯:ROI

俄罗斯信息学奥赛(олимпиадная информатика)一般简称为 ROI。
官网: http://neerc.ifmo.ru/school/archive/index.html
在线提交地址: https://contest.yandex.ru/roiarchive/ ,Codeforces 上也有一些
一般简称为 ROI。流程:

  • 市级比赛(Municipal stage/Муниципальный этап)
  • 州级比赛(Regional Stage/Региональный этап)
  • 决赛(Final Stage/Заключительный этап)

目前 LibreOJ 有近几年的 ROI 决赛题的译文。
除此之外,俄罗斯较大型的、面向中学生的比赛还有:

加拿大:CCC & CCO

CCC: Canadian Computing Competition
CCO: Canadian Computing Olympiad
官网地址: https://cemc.math.uwaterloo.ca/contests/past_contests.html#ccc
CCC 提交地址: https://dmoj.ca/problems/?category=4
CCO 提交地址: https://dmoj.ca/problems/?category=24
CCC 在 DMOJ 有官方 (?) 题解。
CCC Junior/Senior 贴近 NOIP 普及组/提高组难度。CCO 想要拿到金牌可能得有 NOI 银的水平。

台湾地区:資訊奧林匹亞競賽

台湾地区把 OI 中的 informatics 翻译成“资讯”而非大陆通用的翻译“信息”。
台湾地区的选手如果想去参加 IOI,需要经过这几轮比赛:

  • 區域資訊學科能力競賽
  • 全國資訊學科能力競賽
  • 資訊研習營(TOI)

其他国家

法国与澳大利亚:FARIO http://orac.amt.edu.au/cgi-bin/train/hub.pl
难度与 NOI 类似。

韩国:한국 정보 올림 피아드: https://www.digitalculture.or.kr/koi/
https://www.digitalculture.or.kr/koi/selectOlymPiadDissentList.do
https://www.acmicpc.net/problemset
难度太低。

英国 British Informatics Olympiad: https://www.olympiad.org.uk/
难度太低。

捷克:Matematická olympiáda–kategorie P: http://mo.mff.cuni.cz/p/archiv.html

罗马尼亚:Olimpiada Nationala de Informatica: http://olimpiada.info/
题面、测试数据、题解请在含有 Subiecte 字样的标签页中寻找。

其它国际 OI 竞赛

BalticOI

BalticOI 面向的是波罗的海周边各国。BalticOI 2018 的参赛国有立陶宛、波兰、爱沙尼亚、芬兰等 9 国。题目难度大。
除了 2017 年,BalticOI 每年都公开题面、测试数据和题解。然而 BalticOI 没有一个固定的官网,每年的主办方都会新建一个网站……
关于历年的官网地址,Planet6174 整理出了一个 帖子
目前 LibreOJ 有近十年的 BalticOI 题。

BalkanOI

BalkanOI 面向巴尔干地区周边各国。BalkanOI 2018 的参赛国有罗马尼亚、希腊、保加利亚、塞尔维亚等 12 国。题目难度大。
BalkanOI 只有某几年公开题面、测试数据和题解,官网地址参见上面那个帖子。

CEOI

CEOI 2018 的参赛国与上面两个比赛有部分重叠,包括波兰、罗马尼亚、格鲁吉亚、克罗地亚等国。题目难度大。
CEOI 每年都公开题面、测试数据和题解,官网地址参见上面那个帖子。
在国内 OJ 中,BZOJ 的 CEOI 题相对最齐。

European Junior Olympiad in Informatics (eJOI)

参赛国包含俄罗斯、亚美尼亚、保加利亚、波兰等国。题目难度较大。
eJOI 每年都公开题面、测试数据和题解,官网地址参见上面那个帖子。

International School for Informatics“Junior”(ISIJ)

似乎没有官网。见 CCF 新闻 http://www.noi.cn/newsview.html?id=911&hash=2D52A8&type=1
据 300iq 说题目质量很糟糕。

Nordic Olympiads in Informatics (NOI)

官网地址: http://nordic.progolymp.se
近两年才开始举办的比赛,面向北欧各国。


评论