International Olympiad in Informatics

Annual programming competition From Wikipedia, the free encyclopedia

The International Olympiad in Informatics (IOI) is an annual competitive programming competition and one of the International Science Olympiads for secondary school students. The first IOI was held in 1989 in Pravetz, Bulgaria.

The logo of the International Olympiad in Informatics

Each country sends a team of up to four students, plus one team leader, one deputy leader, and guests. Students in each country are selected for their country's team through national computing contests. Students at the IOI compete on an individual basis. There is no official team ranking.

The contest consists of two days of solving six complicated algorithmic tasks by writing computer programs in C++.[1][2] All task materials are published on each year's contest website soon after the competition ends.

Competition structure and participation

The competition room at the IOI 2006
Obverse
Back
A bronze medal from IOI 2006 in Mexico
In front of the competition room at the IOI 2007

On each of the two competition days, the competitors are typically given three problems which they have to solve in five hours. Each student works on their own to solve the problems with no outside help, specifically no communication with other contestants, books, web access, etc. Contestants are typically allowed to bring non-programmable wired keyboards and mice.[3] Usually to solve a task the contestant has to write a computer program (in C++) and submit it before the five-hour competition time ends. The program is graded based on secret test data. Since IOI 2010, tasks are divided into subtasks with graduated difficulty, and points are awarded only when all tests for a particular subtask yield correct results, within specific time and memory limits. In some cases, the contestant's program has to interact with a secret computer library, which allows problems where the input is not fixed, but depends on the program's actions – for example in game problems (a.k.a. interactive problems). Another type of problem has the inputs publicly available, for these, the contestants have to submit an output file instead of a program, and it is up to them whether they obtain the output files by writing a program (possibly exploiting special characteristics of the input), or by hand, or by a combination of these means. Pascal has been removed as an available programming language as of 2019.[4]:11

IOI 2010 for the first time had a live web scoreboard with real-time provisional results. Submissions will be scored as soon as possible during the contest, and the results posted. Contestants will be aware of their scores, but not others', and may resubmit to improve their scores. Starting from 2012, IOI has been using the Contest Management System (CMS) for developing and monitoring the contest.[5]

The scores from the two competition days and all problems are summed up separately for each contestant. Medals are awarded depending on their relative total score. The top 50% of the contestants are awarded medals, such that the relative number of gold : silver : bronze : no medal is approximately 1:2:3:6 (thus 1/12 of the contestants get a gold medal).

Prior to IOI 2010, students who did not receive medals did not have their scores published, although the scores of students who did not receive medals are still not available in the official results, they are known from the live web scoreboard. In IOI 2012 the top 3 nations ranked by aggregate score (Russia, China and USA) were subsequently awarded during the closing ceremony.

Analysis of female performance shows 77.9% of women obtain no medal, while 49.2% of men obtain no medal. "The average female participation was 4.4% in 1989–1994 and 2.2% in 1996–2014." It also suggests much higher participation of women on the national level, claiming sometimes double-digit percentages in total participation on the first stage.[6] President of the IOI (2011-2014), Richard Forster, says the competition has difficulty attracting women and that in spite of trying to solve it, "none of us have hit on quite what the problem is, let alone the solution."[1] The European Girls’ Olympiad in Informatics (EGOI), which was first held in 2021 was started with the goal to increscent female participants at IOI and other Informatics Olympiads.[7]

In IOI 2017 held in Iran, due to not being able to participate in Iran, the Israeli students participated in an offsite competition organized by IOI in Russia.[4]:11 Due to visa issues, the full USA team was unable to attend, although one contestant Zhezheng Luo[8] was able to attend by traveling with the Chinese team[9] and winning gold medal and 3rd place in standings.[10]

In IOI 2019 held in Azerbaijan, the Armenia team did not participate due to the dispute between the two countries, despite the guarantees provided[11] and official invitation letter sent by the host Azerbaijan.

Due to the COVID-19 pandemic, both the IOI 2020 and IOI 2021, originally scheduled to be hosted by Singapore, were held as online contests. The IOI 2022, hosted by Indonesia, was held as a hybrid event, with around 25% of the contestants participating online.[12]

In response to the invasion of Ukraine, students from Russia and Belarus can only participate as individuals under the IOI flag but not as national delegations starting from IOI 2022, and they would only participate online for IOI 2022.[13] From 2023 onwards they would participate in person, but under the IOI flag.

In response to the conflict and humanitarian crisis in Gaza, students from Israel can only participate as individuals under the IOI flag but not as a national delegation from IOI 2025 onwards. Over two thirds of the delegations voted in favour of the sanction in the IOI General Assembly.[14]

Members

Summary

More information Number, Year ...
NumberYearDatesHost countryHost city Absolute Winner ScoreResultsWebsite
11989May 16–19Bulgaria BulgariaPravetz Teodor Tonchev (Bulgaria) 100/100[15]
21990July 15–21Byelorussian Soviet Socialist Republic Belarus, Soviet UnionMinsk Tsvetomir Petrov (Bulgaria) 160/200[16]
31991May 19–25Greece GreeceAthens Igor Maly (Czechoslovakia) 196/200[17]
41992July 11–21Germany GermanyBonn Bom Jun Kim (Republic of Korea), Fredrik Huss (Sweden), Gao Chen (China), Jittat Fakcharoenphol (Thailand), Laszlo Peter (Hungary), Matej Ondrusek (Czechoslovakia), Nathan Bronson (United States of America), Pinit Asavanuchit (Thailand), Shawn Smith (United States of America), Viet Nguyen Tuan (Vietnam), Xing Wu (China), Yunhe Yang (China), Niklas Eén (Sweden) 200/200[18]
51993October 16–25Argentina ArgentinaMendoza Fredrik Huss (Sweden), Martin Mareš (Czech Republic), Mehdi Foladgar (Iran), Radu-Lucian Lupsa (Romania) 200/200[19][20]
61994July 3–10Sweden SwedenHaninge Victor Bargatchev (Russia) 195/200[21][22]
71995June 26 – July 3Netherlands NetherlandsEindhoven Victor Bargatchev (Russia) 186/200[23]
81996July 25 – August 2Hungary HungaryVeszprém Daniel Kráľ (Czech Republic) 196/200[24]
91997November 30 – December 7South Africa South AfricaCape Town Vladimir Martianov (Russia) 462/600[25]
101998September 5–12Portugal PortugalSetúbal Daniel Wright (South Africa), Mihai Stroe (Romania), Vladimir Martianov (Russia), Zhunping Zhang (China) 700/700[26]
111999October 9–16Turkey TurkeyAntalya-Belek Hong Chen (China) 480/600[27]
122000September 23–30China ChinaBeijing Mikhail Baoutine (Russia) 700/700[28]
132001July 14–21Finland FinlandTampere Reid Barton (United States of America) 580/600[29]
142002August 18–25South Korea Korea Rep.Yong-In Wan Yeong Jung (Republic of Korea) 510/600[30]
152003August 16–23United States United StatesKenosha, Wisconsin Hwan-Seung Yeo (Republic of Korea) 455.4/600[31]
162004September 11–18Greece GreeceAthens Paul Jefferys (United Kingdom) 565/600[32]
172005August 18–25Poland PolandNowy Sącz Eric Price (United States of America), Weidong Hu (China), Yuan Zhou (China), Yuriy Znovyak (Ukraine) 600/600[33][34]
182006August 13–20Mexico MexicoMérida, Yucatán Filip Wolski (Poland) 480/600[35]
192007August 15–22Croatia CroatiaZagreb Tomasz Kulczyński (Poland) 574/600[36][37]
202008August 16–23Egypt EgyptCairo Huacheng Yu (China) 558/600[38]
212009August 8–15Bulgaria BulgariaPlovdiv Gennady Korotkevich (Belarus) 743/800[39][40]
222010August 14–21Canada CanadaWaterloo, Ontario Gennady Korotkevich (Belarus) 778/800[41][42]
232011July 22–29Thailand ThailandPattaya Gennady Korotkevich (Belarus) 600/600[43][44]
242012September 23–30Italy ItalySirmione and Montichiari Johnny Ho (United States of America) 600/600[45][46]
252013July 6–13Australia AustraliaBrisbane Lijie Chen (China) 569/600[47][48]
262014July 13–20Taiwan TaiwanTaipei Ishraq Huda (Australia), Scott Wu (United States of America), Yinzhan Xu (China) 600/600[49][50]
272015July 26 – August 2Kazakhstan KazakhstanAlmaty Jeehak Yoon (Republic of Korea) 600/600[51][52]
282016August 12–19Russia RussiaKazan Ce Jin (China) 597/600[53][54]
292017July 28 – August 4Iran IranTehran Yuta Takaya (Japan) 589.52/600[55][56]
302018September 1–8 Japan JapanTsukuba Benjamin Qi (United States of America) 499/600[57][58]
312019August 4–11Azerbaijan AzerbaijanBaku Benjamin Qi (United States of America) 547.09/600[59][60]
322020September 13–19aSingapore Singaporeonline William Lin (United States of America) 600/600[61][62]
332021June 19–25Singapore Singaporeonline Mingyang Deng (China) 600/600[63][64]
342022August 7–15Indonesia IndonesiaYogyakarta Jiangqi Dai (China), Shaoxuan Tang (China) 600/600[65][66]
352023August 28 – September 4Hungary HungarySzeged Tingqiang Xu (China) 580/600[67][68]
362024September 1–8Egypt EgyptAlexandria Kangyang Zhou (China) 600/600[69][70]
372025July 27 – August 3Bolivia BoliviaSucre Hengxi Liu (China) 591.23/600[71][72]
382026August 9–16Uzbekistan UzbekistanTashkent [73]
392027September 12–19Germany GermanyPotsdam [74]
402028Japan Japan
412029Bulgaria Bulgaria
Close

All-time medal table

Top

More information Rank, Nation ...
As of 2025
RankNationGoldSilverBronzeTotal
1 China (CHN)1062812146
2 United States (USA)694117127
3 Russia (RUS)684012120
4 South Korea (KOR)535028131
5 Poland (POL)455436135
6 Romania (ROU)386037135
7 Japan (JPN)38331081
8 Iran (IRN)336925127
9 Bulgaria (BGR)295745131
10 Taiwan (TWN)266430120
Totals (10 entries)5054962521,253
Close

All

https://stats.ioinformatics.org/countries/

Since 1989 to 2025:

In almost every edition, the top 10% of participants receive gold, the next 20% receive silver, and the next 30% receive bronze.

More information Rank, Nation ...
International Olympiad in Informatics medal table
RankNationGoldSilverBronzeTotal
1 China (CHN)1062812146
2 United States (USA)694117127
3 Russia (RUS)684012120
4 South Korea (KOR)535028131
5 Poland (POL)455436135
6 Romania (ROU)386037135
7 Japan (JPN)38331081
8 Iran (IRN)336925127
9 Bulgaria (BGR)295745131
10 Taiwan (TWN)266430120
11 Slovakia (SVK)264538109
12 Canada (CAN)233642101
13 Vietnam (VNM)225355130
14 Croatia (HRV)164648110
15 Belarus (BLR)164244102
16 Hungary (HUN)163852106
17 Czech Republic (CZE)16295499
18 Thailand (THA)153965119
19 Germany (DEU)15325299
20 Israel (ISR)14343583
21 Ukraine (UKR)134252107
22 Sweden (SWE)13304285
23 Australia (AUS)11334286
24 Latvia (LVA)8255588
25 Great Britain (GBR)8224979
26 Hong Kong (HKG)7375195
27 Georgia (GEO)7134464
28 Indonesia (IDN)5374789
29 Finland (FIN)5284881
30 Estonia (EST)5204368
31 Turkey (TUR)4295386
32 Netherlands (NLD)4194366
33 South Africa (ZAF)4134865
34 Kazakhstan (KAZ)3304275
35 India (IND)3254270
36 France (FRA)3214266
37 Brazil (BRA)3204164
38 Argentina (ARG)392638
39 Sri Lanka (LKA)371727
40 Austria (AUT)363039
41 Denmark (DNK)362433
42 Soviet Union (SUN)3418
43 Lithuania (LTU)2315285
44 Italy (ITA)2264472
45 Czechoslovakia (CSK)2151734
46 Switzerland (CHE)2113750
47 Malaysia (MYS)261725
48 Serbia (SRB)1223659
49 Armenia (ARM)183746
50 Spain (ESP)182130
51 Slovenia (SVN)172937
52 Bangladesh (BGD)172533
53 Ireland (IRL)151521
54 Mexico (MEX)132832
55 Norway (NOR)131115
56 Yugoslavia (YUG)1315
57 Mongolia (MNG)121114
58 Turkmenistan (TKM)1067
59 Moldova (MDA)083240
60 Cuba (CUB)083139
61 Egypt (EGY)082836
62 Macau (MAC)071926
63 Greece (GRC)063339
64 North Macedonia (MKD)062430
65 Philippines (PHL)041519
66 Kyrgyzstan (KGZ)032023
67 Belgium (BEL)031316
68 Tajikistan (TJK)0369
69 New Zealand (NZL)022527
70 Syria (SYR)021618
71 Azerbaijan (AZE)021416
72 Cyprus (CYP)021113
73 Colombia (COL)021012
74 Portugal (PRT)02911
75 Luxembourg (LUX)011516
76 Bosnia and Herzegovina (BIH)011011
77 Jordan (JOR)0145
 Uzbekistan (UZB)0145
79 Saudi Arabia (SAU)0077
80 Pakistan (PAK)0066
81 Chile (CHL)0044
82 Iceland (ISL)0033
 Morocco (MAR)0033
 Trinidad and Tobago (TTO)0033
85 Malta (MLT)0022
 Tunisia (TUN)0022
87 Algeria (DZA)0011
 Montenegro (MNE)0011
 Palestine (PSE)0011
 Peru (PER)0011
 Venezuela (VEN)0011
92 Albania (ALB)0000
 Bolivia (BOL)0000
 Costa Rica (CRI)0000
 Dominican Republic (DOM)0000
 Ecuador (ECU)0000
 El Salvador (SLV)0000
 Gabon (GAB)0000
 Ghana (GHA)0000
 Honduras (HND)0000
 Kenya (KEN)0000
 Kuwait (KUW)0000
 Libya (LBY)0000
 Madagascar (MDG)0000
 Mauritius (MUS)0000
 Mozambique (MOZ)0000
 Nigeria (NGA)0000
 Rwanda (RWA)0000
 United Arab Emirates (ARE)0000
 Zimbabwe (ZWE)0000
Totals (110 entries)8261,5952,3804,801
Close

Top Performances

The following is a list of the top performers in the history of the IOI, with the list containing any contestant with at least 3 gold medals.[75] The P sign indicates a perfect score, a rare achievement in IOI history. The U sign indicates an unofficial participation, where a contestant participated in a host's second team. Also, first (I), second (II) and third (III) places among gold medalists are indicated where appropriate.

More information Name, Team ...
NameTeamYears
Gennady KorotkevichBelarusG(II) 2012GP(I) 2011G(I) 2010G(I) 2009G 2008G 2007S 2006
Hristo VenevBulgariaG 2016G 2015G 2014G 2013S 2012
Rain JiangUnited StatesG 2025G 2024G 2023G 2021S 2022
Zixiang ZhouCanadaG 2022G 2021G 2020G(III) 2019S 2018
Filip WolskiPolandG(I) 2006G 2005G 2004G 2003
Rareș Darius BuhaiRomaniaG 2015G 2014G 2013G 2012
Yuta TakayaJapanG(I) 2017G 2016G 2015G 2014
Rumen HristovBulgariaG 2012G 2011G(II) 2010S 2009S 2008
Andrzej Gąsienica-SamekPolandG 1999G 1998G 1997S 1996
Eduard BatmendijnSlovakiaG 2015G 2013G 2012S 2014
Martin PettaiEstoniaG 2002G 2001G 2000S 1999
Nikoloz BirkadzeGeorgiaG 2020G 2019G 2018S 2017
Patrick PavićCroatiaG 2022G 2021G 2020S 2019
Ryan BaiCanadaG 2025G 2024G 2023S 2022
Daiki KodamaJapanG 2023G 2022G 2021
Daniel WeberIsraelG 2024G 2023G 2022
Jarosław KwiecieńPolandG 2016G 2015G 2014
John PardonUnited StatesG 2007G 2006G 2005
Marcin AndrychowiczPolandG 2008G 2007G 2006
Martin MarešCzech RepublicG 1995G 1994GP(I) 1993
Masataka YonedaJapanG 2020G 2019GU 2018
Neal WuUnited StatesG 2010G 2009G 2008
Scott WuUnited StatesGP(I) 2014G 2013G 2012
Shogo MuraiJapanG 2012G 2011G 2010
Vladimir MartianovRussiaG 1999GP(I) 1998G(I) 1997
Vladimir RomanovRussiaG 2019G 2018G 2017
Close

Feeder competitions

Most participating countries use feeder competitions to select their team. They are usually referred to as National Olympiad in Informatics and is the course of selection of the country's top team or persons to participate in the IOI. A number of these are listed below:

  • Central European Olympiad in Informatics
  • Indian Computing Olympiad
  • National Olympiad in Informatics, China [zh]
  • Olimpiada Națională de Informatică [ro][76]
  • Nederlandse Informatica Olympiade [nl][77]
  • Olimpiada Mexicana de Informática [es]
  • South African Computer Olympiad
  • Syrian Olympiad in Informatics
  • United States of America Computing Olympiad[78]
  • Moroccan Olympiad in Informatics
  • All Ireland Programming Olympiad
  • Indonesian Olympiad in Informatics
  • Egyptian Olympiad in Informatics
  • National Olympiad in Informatics - Philippines[79]
  • Bundeswettbewerb Informatik [de] - Germany
  • Vietnamese Olympiad in Informatics [vi]
  • Thailand Olympiad in Informatics (TOI)

Notes

1.^aIOI 2020 virtual closing ceremony was held on September 23, 2020.

See also

References

Related Articles

Wikiwand AI