Skip to content
Surf Wiki
Save to docs
technology/computing

From Surf Wiki (app.surf) — the open knowledge base

International Olympiad in Informatics

Annual programming competition

International Olympiad in Informatics

Annual programming competition

The logo of the International Olympiad in Informatics

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.

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++. 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
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. 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.: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.

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. 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." 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.

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.:11 Due to visa issues, the full USA team was unable to attend, although one contestant Zhezheng Luo was able to attend by traveling with the Chinese team and winning gold medal and 3rd place in standings.

In IOI 2019 held in Azerbaijan, the Armenia team did not participate due to the dispute between the two countries, despite the guarantees provided 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.

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. 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.

Members

  • Albania
  • Algeria
  • Argentina
  • Armenia
  • Australia
  • Austria
  • Azerbaijan
  • Bangladesh
  • Belarus
  • Belgium
  • Bolivia
  • Bosnia and Herzegovina
  • Brazil
  • Bulgaria
  • Canada
  • Chile
  • China
  • Colombia
  • Croatia
  • Cuba
  • Cyprus
  • Czech Republic
  • Denmark
  • Dominican Republic
  • Ecuador
  • Egypt
  • El Salvador
  • Estonia
  • Finland
  • France
  • Georgia
  • Germany
  • Greece
  • Hong Kong
  • Hungary
  • Iceland
  • India
  • Indonesia
  • Iran
  • Ireland
  • Israel
  • Italy
  • Japan
  • Jordan
  • Kazakhstan
  • Kyrgyzstan
  • Latvia
  • Libya
  • Lithuania
  • Luxembourg
  • Macau
  • Malaysia
  • Mexico
  • Moldova
  • Mongolia
  • Montenegro
  • Morocco
  • Netherlands
  • New Zealand
  • Nigeria
  • North Macedonia
  • Norway
  • Pakistan
  • Palestine
  • Peru
  • Philippines
  • Poland
  • Portugal
  • Romania
  • Russia
  • Rwanda
  • Saudi Arabia
  • Serbia
  • Singapore
  • Slovakia
  • Slovenia
  • South Africa
  • South Korea
  • Spain
  • Sri Lanka
  • Sweden
  • Switzerland
  • Syria
  • Taiwan
  • Tajikistan
  • Thailand
  • Tunisia
  • Turkey
  • Turkmenistan
  • Ukraine
  • United Kingdom
  • United States
  • Uzbekistan
  • Venezuela
  • Vietnam

Former members

  • Gabon
  • Ghana
  • Kuwait
  • Madagascar
  • Malta
  • Mauritius
  • Mozambique
  • Sudan
  • Trinidad and Tobago
  • United Arab Emirates
  • Zimbabwe

Summary

NumberYearDatesHost countryHost cityAbsolute WinnerScoreResultsWebsite
11989May 16–19Bulgaria BulgariaPravetzTeodor Tonchev (Bulgaria)100/100
21990July 15–21Byelorussian SSR Belarus, Soviet UnionMinskTsvetomir Petrov (Bulgaria)160/200
31991May 19–25Greece GreeceAthensIgor Maly (Czechoslovakia)196/200
41992July 11–21DEU GermanyBonnBom 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
51993October 16–25ARG ArgentinaMendozaFredrik Huss (Sweden), Martin Mareš (Czech Republic), Mehdi Foladgar (Iran), Radu-Lucian Lupsa (Romania)200/200
61994July 3–10Sweden SwedenHaningeVictor Bargatchev (Russia)195/200
71995June 26 – July 3NED NetherlandsEindhovenVictor Bargatchev (Russia)186/200
81996July 25 – August 2Hungary HungaryVeszprémDaniel Kráľ (Czech Republic)196/200
91997November 30 – December 7RSA South AfricaCape TownVladimir Martianov (Russia)462/600
101998September 5–12Portugal PortugalSetúbalDaniel Wright (South Africa), Mihai Stroe (Romania), Vladimir Martianov (Russia), Zhunping Zhang (China)700/700
111999October 9–16Turkey TurkeyAntalya-BelekHong Chen (China)480/600
122000September 23–30CHN ChinaBeijingMikhail Baoutine (Russia)700/700
132001July 14–21FIN FinlandTampereReid Barton (United States of America)580/600
142002August 18–25KOR Korea Rep.Yong-InWan Yeong Jung (Republic of Korea)510/600
152003August 16–23USA United StatesKenosha, WisconsinHwan-Seung Yeo (Republic of Korea)455.4/600
162004September 11–18Greece GreeceAthensPaul Jefferys (United Kingdom)565/600
172005August 18–25POL PolandNowy SączEric Price (United States of America), Weidong Hu (China), Yuan Zhou (China), Yuriy Znovyak (Ukraine)600/600
182006August 13–20MEX MexicoMérida, YucatánFilip Wolski (Poland)480/600
192007August 15–22Croatia CroatiaZagrebTomasz Kulczyński (Poland)574/600
202008August 16–23Egypt EgyptCairoHuacheng Yu (China)558/600
212009August 8–15Bulgaria BulgariaPlovdivGennady Korotkevich (Belarus)743/800
222010August 14–21CAN CanadaWaterloo, OntarioGennady Korotkevich (Belarus)778/800
232011July 22–29THA ThailandPattayaGennady Korotkevich (Belarus)600/600
242012September 23–30ITA ItalySirmione and MontichiariJohnny Ho (United States of America)600/600
252013July 6–13AUS AustraliaBrisbaneLijie Chen (China)569/600
262014July 13–20TWN TaiwanTaipeiIshraq Huda (Australia), Scott Wu (United States of America), Yinzhan Xu (China)600/600
272015July 26 – August 2Kazakhstan KazakhstanAlmatyJeehak Yoon (Republic of Korea)600/600
282016August 12–19RUS RussiaKazanCe Jin (China)597/600
292017July 28 – August 4IRN IranTehranYuta Takaya (Japan)589.52/600
302018September 1–8Japan JapanTsukubaBenjamin Qi (United States of America)499/600
312019August 4–11Azerbaijan AzerbaijanBakuBenjamin Qi (United States of America)547.09/600
322020September 13–19Singapore SingaporeonlineWilliam Lin (United States of America)600/600
332021June 19–25Singapore SingaporeonlineMingyang Deng (China)600/600
342022August 7–15Indonesia IndonesiaYogyakartaJiangqi Dai (China), Shaoxuan Tang (China)600/600
352023August 28 – September 4Hungary HungarySzegedTingqiang Xu (China)580/600
362024September 1–8Egypt EgyptAlexandriaKangyang Zhou (China)600/600
372025July 27 – August 3Bolivia BoliviaSucreHengxi Liu (China)591.23/600
382026August 9–16Uzbekistan UzbekistanTashkent
392027September 12–19Germany GermanyPotsdam
402028Japan Japan
412029Bulgaria Bulgaria

All-time medal table

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. 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.

NameTeamcolspan=7Years
Gennady Korotkevich
Hristo Venev
Rain Jiang
Zixiang Zhou
Filip Wolski
Rareș Darius Buhai
Yuta Takaya
Rumen Hristov
Andrzej Gąsienica-Samek
Eduard Batmendijn
Martin Pettai
Nikoloz Birkadze
Patrick Pavić
Ryan Bai
Daiki Kodama
Daniel Weber
Jarosław Kwiecień
John Pardon
Marcin Andrychowicz
Martin Mareš
Masataka Yoneda
Neal Wu
Scott Wu
Shogo Murai
Vladimir Martianov
Vladimir Romanov

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:

  • Australian Informatics Olympiad
  • British Informatics Olympiad
  • Canadian Computing Olympiad :* The participants of which are chosen from the Canadian Computing Competition
  • Central European Olympiad in Informatics
  • Indian Computing Olympiad
  • South African Computer Olympiad
  • Syrian Olympiad in Informatics
  • United States of America Computing Olympiad
  • Moroccan Olympiad in Informatics
  • All Ireland Programming Olympiad
  • Indonesian Olympiad in Informatics
  • Egyptian Olympiad in Informatics
  • National Olympiad in Informatics - Philippines
    • Germany
  • Thailand Olympiad in Informatics (TOI)

Notes

:1.IOI 2020 virtual closing ceremony was held on September 23, 2020.

References

References

  1. Robson, Frank. (10 August 2013). "Numbers game". [[The Sydney Morning Herald]].
  2. "Contest Rules".
  3. "Competition Equipment". Arab Academy.
  4. (19 August 2016). "Minutes of the Meetings held in Kazan, Russian Federation". General Assembly of International Olympiad in Informatics.
  5. "IOI 2010 Waterloo". University of Waterloo.
  6. (2015). "An Update on the Female Presence at the IOI". ioinformatics.org.
  7. "European Girls' Olympiad in Informatics".
  8. "Zhezheng Luo".
  9. (31 July 2017). "IOI 2017, first round - Codeforces".
  10. "IOI 2017: Results".
  11. "General Assembly Minutes of the Meetings held in Almaty, Kazakhstan 26 July – 2 August, 2015".
  12. "Number of Participants".
  13. (March 12, 2022). "IOI response to invasion of Ukraine".
  14. (September 24, 2024). "IOI response to the conflict in Gaza".
  15. "IOI 1989 Results".
  16. "IOI 1990 Results".
  17. "IOI 1991 Results".
  18. "IOI 1992 Results".
  19. "IOI 1993 Results".
  20. "IOI 1993 Website".
  21. "IOI 1994 Results".
  22. "IOI 1994 Website".
  23. "IOI 1995 Results".
  24. "IOI 1996 Results".
  25. "IOI 1997 Results".
  26. "IOI 1998 Results".
  27. "IOI 1999 Results".
  28. "IOI 2000 Results".
  29. "IOI 2001 Results".
  30. "IOI 2002 Results".
  31. "IOI 2003 Results".
  32. "IOI 2004 Results".
  33. "IOI 2005 Results".
  34. "IOI 2005 Website".
  35. "IOI 2006 Results".
  36. "IOI 2007 Results".
  37. "IOI 2007 Website".
  38. "IOI 2008 Results".
  39. "IOI 2009 Results".
  40. "IOI 2009 Website".
  41. "IOI 2010 Results".
  42. "IOI 2010 Website".
  43. "IOI 2011 Results".
  44. "IOI 2011 Website".
  45. "IOI 2012 Results".
  46. "IOI 2012 Website".
  47. "IOI 2013 Results".
  48. "IOI 2013 Website".
  49. "IOI 2014 Results".
  50. "IOI 2014 Website".
  51. "IOI 2015 Results".
  52. "IOI 2015 Website".
  53. "IOI 2016 Results".
  54. "IOI 2016 Website".
  55. "IOI 2017 Results".
  56. "IOI 2017 Website".
  57. "IOI 2018 Results".
  58. "IOI 2018 Website".
  59. "IOI 2019 Results".
  60. "IOI 2019 Website".
  61. "IOI 2020 Results".
  62. "IOI 2020 Website".
  63. "IOI 2021 Results".
  64. "IOI 2021 Website".
  65. "IOI 2022 Results".
  66. "IOI 2022 Website".
  67. "IOI 2023 Results".
  68. "IOI 2023 Website".
  69. "IOI 2024 Results".
  70. "IOI 2024 Website".
  71. "IOI 2025 Results".
  72. "IOI 2025 Website".
  73. "IOI 2026 Website".
  74. (October 2025). "IOI 2027 Website".
  75. "Hall of Fame".
  76. http://olimpiada.info/Romanian National Informatics Olympiad {{Webarchive. link. (2019-06-24)
  77. "Informatica Olympiade".
  78. "USACO".
  79. "Home — NOI.PH".
Info: Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about International Olympiad in Informatics — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report