OI Events and Formats
Introduction to Competitions
Olympiad in Informatics (OI) is a widely held subject competition among middle school students, similar in nature to physics and mathematics competitions. OI assesses participants' ability to solve practical problems by writing computer programs using algorithms, data structures, and mathematical knowledge.
There are many types of OI competitions. In China alone, they include:
- National Olympiad in Informatics in Provinces (NOIP)
- National Olympiad in Informatics (NOI)
- National Olympiad in Informatics Winter Camp (WC)
- China Team Selection Competition for the International Olympiad in Informatics (CTSC)
International OI competitions include:
- International Olympiad in Informatics (IOI)
- USA Computing Olympiad (USACO)
- Japanese Olympiad in Informatics (JOI)
-
Asia-Pacific Informatics Olympiad (APIO)
……
For most participants, the new season each year starts with the first round of CSP-J/S in September.
In China, the only language allowed in OI competitions is C++ (C and Pascal were once permitted but are no longer supported). Different competitions have different regulations regarding the C++ version. Contest problems are generally related to algorithms or data structures, and problem formats include traditional problems (the most common type requiring input and output to files) and non-traditional problems (output-only problems, interactive problems, code completion problems, etc.).
Competition Formats
OI Format
Participants have only one submission opportunity. Results are not visible during the contest and are announced after the contest. Each problem has multiple test cases, and scores are awarded based on the number of test cases passed; each test case may also have partial scores, meaning points can be earned even if only part of the data is processed correctly.
Self-evaluation tool selfEval
Nowadays, some NOI series competitions provide the selfEval self-evaluation tool. selfEval is built into the customized NOI Linux for national competitions. Since its official announcement and deployment at NOI2023, selfEval has been used in subsequent NOI national competitions, APIO (China region), and NOI Winter Camp. Participants can use selfEval to test their programs on a set of test data (called pre-test data) and receive feedback. There is a specified upper limit for the number of self-tests per participant in each contest (the limit was 50 times for NOI2024 and 30 times for NOI2025), and the pre-test data is not visible to participants. Since the pre-test data differs from the official test data, self-test results are for debugging purposes only and cannot be considered as official evaluation scores. If a participant performs multiple pre-tests on the same problem, the same pre-test data is used.
The second round of CSP-J/S, NOIP, provincial team selection, and NOI all use the OI format.
IOI Format
Participants have multiple submission opportunities during the contest. Submissions are evaluated in real-time, and results are returned immediately. There is no penalty for incorrect submissions. Each problem has multiple test cases, and scores are awarded based on the number of test cases passed.
APIO and IOI use the IOI format. Currently, domestic competitions are gradually moving towards the IOI format.
Codeforces (CF) Format
Codeforces is an online judging system that regularly hosts contests.
Its contest characteristic is that only part of the data (Pretests) is tested during the contest, while the complete test results for all test cases (System Tests) are returned after the contest ends. Multiple submissions are allowed during the contest, and participants can Hack others' code (here, Hack means submitting a test case that causes someone else's code to fail). To Hack, a participant must lock their own code (meaning they cannot resubmit that problem during the contest). When Hacking, copying the participant's program locally for testing is not allowed; the source code is converted into an image.
Codeforces also provides another format called Extended ICPC (or ICPC+). In this format, all data is tested during the contest, but there is a 12-hour open Hack period after the contest ends. During Hacking, copying the participant's program locally for testing is allowed.
Major Competitions
CSP-J/S
CSP-J/S (Certified Software Professional Junior/Senior) is a non-professional software capability certification test established by CCF after the cancellation of NOIP in 2019. Before 2025, it was open to all ages, but was later changed to participants aged 12 and above.
CSP-J/S is divided into two groups: Junior (abbreviated as CSP-J) and Senior (abbreviated as CSP-S). The schedule consists of two rounds: the first round (usually in September each year) and the second round (usually in October each year). The first round is a written test examining computer theory, operational knowledge, and basic algorithm and mathematical knowledge. The second round is an on-machine exam, with 4 problems each for both Junior and Senior groups. The Junior group exam lasts 3.5 hours, and the Senior group lasts 4 hours (except for CSP-S 2019, which used the old NOIP Senior group format, spanning two days with 3 problems and 3.5 hours each day). The first round is open to all students aged 12 and above. After a ranking-based selection, top performers have the opportunity to participate in the second round.
Registration for the first/second round and post-second-round problem appeals require payment to CCF.
Both rounds award provincial-level certifications based on rankings, categorized into first, second, and third classes.
NOIP
NOIP (National Olympiad in Informatics in Provinces) is an informatics competition organized by the People's Republic of China for middle school students in China (including Hong Kong and Macau).
Old format before and including 2018: NOIP was divided into Popularization Group and Senior Group based on participants, with a Pilot Junior Group in Shanghai in 2018. It consisted of two stages: preliminary and final rounds. The preliminary round tested basic computer knowledge and algorithm fundamentals, while the final round was an on-machine exam. The schedule was usually on the second weekend of November: Saturday morning for Senior Group Round 1 (8:30-12:00, 3.5 hours, 3 problems), Saturday afternoon for Popularization Group (14:30-18:00, 3.5 hours, 4 problems), and Sunday morning for Senior Group Round 2 (8:30-12:00, 3.5 hours, 3 problems). The same paper was used nationwide, but award rules were determined by CCF based on provincial circumstances and announced on the NOI official website after the contest. The first-class award分数线 varied slightly by province.
NOIP was suspended by CCF on August 16, 2019 and announced to resume on January 21, 2020. The NOIP format from 2020 onwards differs from the past, as follows:
- The preliminary round was canceled and replaced by the first round of CSP-J/S.
- The Popularization Group was canceled and replaced by CSP-J. Thereafter, NOIP has only one group, targeting Senior Group level participants.
- The schedule was reduced from two days with 6 problems total (3.5 hours each day) to one day with 4 problems and 4.5 hours total.
- Participants need to achieve a certain ranking in the second round of CSP-S to qualify for NOIP, with specific quotas varying by province. Provincial qualification for NOIP is related to the province's participation numbers and performance in the previous season.
Registration for NOIP and problem appeals do not require additional fees.
NOIP awards are ranked and awarded by province. As of 2019, most university candidates who won a first-class provincial award in the Senior Group could obtain independent recruitment qualifications.
In January 2020, the Ministry of Education of the People's Republic of China issued the Opinions on Carrying out the Pilot Reform of Enrollment for Basic Disciplines in Some Universities. The opinion stated that starting from 2020, independent recruitment by universities would no longer be organized, and a pilot reform for enrollment in basic disciplines (Strong Foundation Plan) would be carried out in some first-class university construction institutions.
Provincial Team Selection
Provincial Team Selection (abbreviated as Provincial Selection) is used to select provincial teams for the national competition, usually held from January to April each year. The schedule typically spans two days, with 3 problems and 4.5 hours each day.
Provincial Selection problems are decided by each province, with a current trend of many provinces choosing joint命题.
The number of spots for each provincial team is calculated using a complex formula, generally related to previous performance and participation numbers. Typically, NOIP scores account for a certain proportion in the Provincial Selection criteria. According to the rules, junior high school students can only be selected as Category E participants and cannot participate in Category A or B selection. There are 5 Category A participants (at least 1 female), and other participants enter Category B based on given quotas and scores. The number of participants from a single school in NOI cannot exceed one-third of the total A and B category quotas for that province (rounded), and the highest-scoring female participant selected for Category A is not counted in this proportion (referred to as the ⅓ limit or ⅓淘汰, see CCF official explanation).
Since 2020, NOI Provincial Team Selection has been uniformly命题 and evaluated by CCF. Provinces capable of命题 may set their own problems, but the selection method must be approved by CCF. Since 2024, NOI Provincial Team Selection has returned to provincial自主命题. Provinces in need may organize joint exams or use problems from other provinces, but specific plans require CCF approval.
NOI
NOI (National Olympiad in Informatics) is the highest-level national competition for provincial teams in China, including Hong Kong and Macau.
NOI is usually held in July. Participants are divided into two categories: official participants and summer camp participants. Official participants are further divided into three categories: A, B, and C. Categories A and B correspond to the provincial team's A and B category participants (Category A receives a 5-point bonus when calculating scores). Category C is nominally a reward quota for schools that have made outstanding contributions to CCF. Summer camp participants are divided into Categories D and E, corresponding to high school and junior high school participants competing as non-official participants. If summer camp participants exceed the score line, they receive only a certificate of achievement without medals (the value of the same score is somewhat lower). The top 50 official participants form the national training team and receive保送资格.
On international platforms, to distinguish it from other competitions also called NOI, it is sometimes referred to as CNOI.
CTT
CTT (China Team Training) is an annual winter training and selection event for IOI national training team participants, consisting of 3-4 tests. In addition to the national training team, some participants who achieved excellent results in that year's NOI can also participate in CTT under the name of "Elite Training."
CTT, along with other processes like regular assignments, constitutes the first stage of national team selection. Since 2021, the top 30 participants in the first stage become national candidate team members and enter the second stage of selection (WC).
WC
WC (Winter Camp) is an annual winter event held at the venue of that year's NOI. Although primarily used for training team training and national team selection, participants who achieved good results in the previous year's NOIP and CSP-S second round can also participate as non-official campers.
WC includes several days of training and tests. Test scores are aggregated with previous stage scores to calculate a comprehensive ranking for training team participants. Before 2020, there was only one test, and the test problems were the same for both training team and non-official campers. The top 15 participants in the comprehensive ranking of the training team became national candidate team members, participating in the final stage of selection (CTS, etc.). Since 2021, with the national team selection function of CTS integrated into WC, the candidate team's test became two rounds, while non-official campers still have one test. The test problems for non-official campers partially overlap with those for the candidate team. The top 6 participants in the candidate team's comprehensive ranking proceed to the final interview, from which 4 official participants and 2替补 participants are selected to participate in that year's IOI competition.
APIO
APIO (Asia-Pacific Informatics Olympiad) is an informatics subject competition for middle school students in the Asia-Pacific region. CCF holds the China region mirror contest in early May each year. Training activities are held around the contest day.
APIO participants are divided into Category A and Category B. The top six (including ties) in Category A can participate in the international award selection for APIO, while Category B participants can only participate in the China region award selection.
CTS
CTS (formerly CTSC, China Team Selection Competition) is used to select the national team (6 participants) from the national candidate team (15 participants) to prepare for that summer's IOI competition, consisting of 4 official participants and 2替补 participants. Like WC, participants who achieved good results in the previous year's NOIP can also participate (without participating in the selection).
Both APIO and CTS are registered by province, generally based on NOIP performance rankings to determine participants (the two are usually very close in timing).
The 2020 CTS was canceled due to the pandemic, and that year's national training team was selected through NOI. Since 2021, the CTS selection process has been replaced by WC.
IOI
IOI (International Olympiad in Informatics) is an annual global informatics competition for middle school students. Each country sends four participants, and the contest is usually直播. In the IOI format, each problem has Subtasks, each corresponding to a certain score.
University Subject Camps
Peking University (PKU)
- Peking University Informatics Winter Experience Camp (PKUWC): Held around the time of the Winter Camp.
- Peking University Informatics Experience Camp (PKUSC): Usually held on campus in June. Since the competition is held in the school's computer lab, the environment is Windows, and the judging system is OpenJudge.
- Peking University Middle School Student Summer Course (Informatics): Held during summer vacation, targeting second-year high school science students.
Tsinghua University (THU)
- Computer Science Department "High School-University Connection" Winter Seminar and Teaching Activity: Equivalent to an informatics winter camp, sometimes abbreviated as THUWC. Usually lasts two days: mornings are for competitions (first day is a standard OI competition, second day is Tsinghua's独创 "engineering problem" competition), and afternoons are for course training.
OI Competitions in Other Countries and Regions
USA: USACO
Official website: http://www.usaco.org/
USACO is perhaps the most familiar foreign OI competition for domestic participants (and likely the one with the most Chinese-language solutions).
From winter to early spring each year, USACO holds a monthly online contest. Each contest lasts 3~5 hours.
According to the official website, USACO contests are divided into four difficulty levels (three levels before the 2015-2016 school year):
- Bronze Division: Suitable for programming beginners, especially those who have only learned the most basic algorithms (e.g., sorting, binary search).
- Silver Division: Suitable for students starting to learn basic algorithmic techniques (e.g., recursion, search, greedy algorithms) and fundamental data structures.
- Gold Division: Students encounter more complex algorithms (e.g., shortest path, DP) and more advanced data structures.
- Platinum Division: Suitable for participants with solid algorithmic design skills, challenging them with complex and more open-ended problems.
In China, the OJ platform with the most comprehensive collection of USACO problems is Luogu.
Poland: POI
Official website: https://oi.edu.pl/
Official submission address: https://szkopul.edu.pl/p/default/problemset/
POI is one of the most frequently practiced foreign OI competitions by many provincial selection participants.
According to the POI official website, the POI process is as follows:
- First Round: Six problems (five problems before the 31st edition), online contest.
- Second Round: Includes one practice contest and two official contests, with one problem in the practice contest and two problems in each official contest.
- Third Round: Includes one practice contest and two official contests, with one problem in the practice contest and three problems in each official contest.
In some years, a contest called ONTAK was held, officially known as the POI Training Camp,对标 domestic national training team training contests (CTT).
Additionally, Poland also holds a public contest called PA,大意 "Algorithm Wars." Its official website is: https://potyczki.mimuw.edu.pl/.
Currently, among domestic OJs, BZOJ has the most comprehensive collection of POI problems.
Croatia: COCI
Official website (English): http://www.hsin.hr/coci/
Official website (Croatian): http://www.hsin.hr/honi/
A competition with a wide difficulty range, approximately from普及 - to省选 -.
Previously, COCI provided problems, data, solutions, and standard code for all problems. Starting from late 2017, COCI stopped updating solutions and standard code. The 2019-2020 season resumed updating solutions and standard code.
Luogu, BZOJ, and LibreOJ have a small number of COCI problems.
Japan: JOI
Official website: https://www.ioi-jp.org/
JOI (Japanese: 日本情報オリンピック) provides problems, data, solutions, and standard code for all problems. In recent years, JOI finals and spring training camps have provided English problem statements but not English solutions. Past JOI Open contests have provided English problem statements and solutions.
JOI process:
- Preliminary Round (予選)
- Final Round (本選/JOI Final)
- Spring Training Camp (春季トレーニング合宿/JOI Spring Camp/JOISC)
- Open Contest (通信教育/JOI Open Contest)
The preliminary round is relatively easy. Since the 2019/2020 season, the preliminary round has been divided into multiple rounds. JOI Final difficulty ranges from提高 - to 提高 +. JOISC and JOI Open problem difficulties range from提高 to NOI -.
Most JOI problems can be submitted on AtCoder. You can find more JOI problems (Japanese statements) on the JOI official website or AtCoder.
Currently, LibreOJ and BZOJ have problems from recent JOI Finals, JOISC, and JOI Open contests.
Russia: ROI
Official website: http://neerc.ifmo.ru/school/archive/index.html
Online submission addresses: https://contest.yandex.ru/roiarchive/ and Codeforces (partial).
ROI (Russian: олимпиадная информатика) is the Russian informatics competition.
Process:
- Municipal Stage (Муниципальный этап)
- Regional Stage (Региональный этап)
- Final Stage (Заключительный этап)
Currently, LibreOJ has translations of recent ROI final problems.
In addition, other larger-scale competitions for middle school students in Russia include:
- Internet Olympiad in Informatics (Russian: Интернет-олимпиады по информатике)
- Official website: http://neerc.ifmo.ru/school/io/index.html
- This competition is organized by ROI problem setters.
- All-Russian Team Olympiad for Schoolchildren (Russian: Всероссийской командной олимпиады школьников)
- Official website: http://neerc.ifmo.ru/school/russia-team/index.html
- The preliminary round, Moscow Team Olympiad, can be submitted on Codeforces.
- Innopolis Open
- Official website: https://olymp.innopolis.ru/en/ooui/information/
- Open Olympiad for Schoolchildren in Programming (Открытая олимпиада школьников по программированию)
- Official website: https://olympiads.ru/zaoch/
- The official website states this competition对标 ROI.
Canada: CCC & CCO
CCC (Canadian Computing Competition), CCO (Canadian Computing Olympiad). Past information and problems can be found on their official website.
CCC and CCO can be submitted on DMOJ, which also provides CCC solutions.
CCC Junior/Senior difficulty is close to NOIP Popularization Group/Senior Group difficulty. Achieving a gold medal in CCO likely requires NOI silver medal level.
Singapore: NOI SG
Official website: https://noisg.comp.nus.edu.sg/noi/
Full name: Singapore National Olympiad in Informatics. In the Singapore domestic context and when not causing ambiguity, it is also referred to as NOI. The format is divided into Online Qualification Contest and Final Contest. The online qualification contest is registered by schools, with participants competing at their own schools and submitting remotely via the internet. Qualification contest results are ranked only within the school, and the top 5 non-zero score participants qualify as school representatives for the national final.
Currently, domestic OJs have limited收录 of NOI SG problems. Past problem statements, test data, and official standard programs can be found on the official GitHub account.
Taiwan Region: 資訊奧林匹亞競賽
In the Taiwan region, "informatics" in OI is translated as "資訊" rather than the mainland's通用 translation "信息."
Taiwan region participants who wish to participate in IOI need to go through these rounds of competitions:
- 區域資訊學科能力競賽
- 全國資訊學科能力競賽
- 資訊研習營 (TOI)
Other Countries
-
Australia: AIO: https://orac.amt.edu.au/hub/aio/
- Difficulty similar to NOI.
-
United Kingdom: British Informatics Olympiad: https://www.olympiad.org.uk/
- Difficulty too low.
-
Czech Republic: Matematická olympiáda–kategorie P: http://mo.mff.cuni.cz/p/archiv.html
-
Romania: Olimpiada Nationala de Informatica: http://olimpiada.info/
- Problem statements, test data, and solutions can be found under tabs containing "Subiecte."
Other International OI Competitions
BalticOI
BalticOI targets countries around the Baltic Sea. Participating countries in BalticOI 2018 included Lithuania, Poland, Estonia, Finland, and 9 others. Problems are difficult.
Except for 2017, BalticOI publicly releases problem statements, test data, and solutions every year. BalticOI does not have a fixed official website; each year's organizer creates a new website. Past official website addresses can be found in this post.
Currently, LibreOJ has problems from the past decade of BalticOI.
BalkanOI
BalkanOI targets countries around the Balkan region. Participating countries in BalkanOI 2018 included Romania, Greece, Bulgaria, Serbia, and 12 others. Problems are difficult.
BalkanOI publicly releases problem statements, test data, and solutions only in certain years. Official website addresses can be found in this post.
CEOI
Participating countries in CEOI 2018 partially overlapped with the above two competitions, including Poland, Romania, Georgia, Croatia, etc. Problems are difficult.
CEOI publicly releases problem statements, test data, and solutions every year. Official website addresses can be found in this post.
eJOI
eJOI stands for European Junior Olympiad in Informatics. Participating countries include Russia, Armenia, Bulgaria, Poland, etc. Problems are relatively difficult.
eJOI publicly releases problem statements, test data, and solutions every year. Official website addresses can be found in this post.
NOI
Warning
This is not the "National Olympiad in Informatics."
NOI stands for Nordic Olympiads in Informatics.
Official website: http://nordic.progolymp.se
A competition that started only in recent years, targeting Nordic countries.
References
- ICPC/CCPC Competitions and Formats
- "Translation Group" Addresses of Some Continental OI Competitions
本页面最近更新:,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:OI-wiki
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用