International Olympiad in Informatics

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++.[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
Front
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 no programable 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, but they may return on-site from IOI 2023 onwards.[13]

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

Former members

Summary

Number Year Dates Host country Host city Results Website
1 1989 May 16–19 Bulgaria Bulgaria Pravetz [15]
2 1990 July 15–21 Byelorussian Soviet Socialist Republic Belarus, Soviet Union Minsk [16]
3 1991 May 19–25 Greece Greece Athens [17]
4 1992 July 11–21 Germany Germany Bonn [18]
5 1993 October 16–25 Argentina Argentina Mendoza [19] [20]
6 1994 July 3–10 Sweden Sweden Haninge [21] [22]
7 1995 June 26 – July 3 Netherlands Netherlands Eindhoven [23]
8 1996 July 25 – August 2 Hungary Hungary Veszprém [24]
9 1997 November 30 – December 7 South Africa South Africa Cape Town [25]
10 1998 September 5–12 Portugal Portugal Setúbal [26]
11 1999 October 9–16 Turkey Turkey Antalya-Belek [27]
12 2000 September 23–30 China China Beijing [28]
13 2001 July 14–21 Finland Finland Tampere [29]
14 2002 August 18–25 South Korea Korea Rep. Yong-In [30]
15 2003 August 16–23 United States United States Kenosha, Wisconsin [31]
16 2004 September 11–18 Greece Greece Athens [32]
17 2005 August 18–25 Poland Poland Nowy Sącz [33] [34]
18 2006 August 13–20 Mexico Mexico Mérida, Yucatán [35]
19 2007 August 15–22 Croatia Croatia Zagreb [36] [37]
20 2008 August 16–23 Egypt Egypt Cairo [38]
21 2009 August 8–15 Bulgaria Bulgaria Plovdiv [39] [40]
22 2010 August 14–21 Canada Canada Waterloo, Ontario [41] [42]
23 2011 July 22–29 Thailand Thailand Pattaya [43] [44]
24 2012 September 23–30 Italy Italy Sirmione and Montichiari [45] [46]
25 2013 July 6–13 Australia Australia Brisbane [47] [48]
26 2014 July 13–20 Taiwan Taiwan Taipei [49] [50]
27 2015 July 26 – August 2 Kazakhstan Kazakhstan Almaty [51] [52]
28 2016 August 12–19 Russia Russia Kazan [53] [54]
29 2017 July 28 – August 4 Iran Iran Tehran [55] [56]
30 2018 September 1–8 Japan Japan Tsukuba [57] [58]
31 2019 August 4–11 Azerbaijan Azerbaijan Baku [59] [60]
32 2020 September 13–19a Singapore Singapore online [61] [62]
33 2021 June 19–25 Singapore Singapore online [63] [64]
34 2022 August 7–15 Indonesia Indonesia Yogyakarta [65] [66]
35 2023 August 28 – September 4 Hungary Hungary Szeged [67] [68]
36 2024 September 1–8 Egypt Egypt Alexandria [69] [70]
37 2025 July 27 – August 3 Bolivia Bolivia La Paz [71]
38 2026 Uzbekistan Uzbekistan [72]
39 2027 Germany Germany Potsdam

All-time medal table

As of 2024
RankNationGoldSilverBronzeTotal
1 China (CHN)1022812142
2 Russia (RUS)684012120
3 United States (USA)683916123
4 South Korea (KOR)495028127
5 Poland (POL)445235131
6 Japan (JPN)37301077
7 Romania (ROU)346037131
8 Iran (IRN)326724123
9 Bulgaria (BGR)275545127
10 Slovakia (SVK)264536107
Totals (10 entries)4874662551,208

Multiple IOI winners

The following is a list of the top performers in the history of the IOI.[73] 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.

Name Team Years
Gennady Korotkevich Belarus G(II) 2012 GP(I) 2011 G(I) 2010 G(I) 2009 G 2008 G 2007 S 2006
Bruce Merry South Africa G 2001 G 2000 S 1999 B 1998 B 1997 B 1996
Rumen Hristov Bulgaria G 2012 G 2011 G(II) 2010 S 2009 S 2008
Hristo Venev Bulgaria G 2016 G 2015 G 2014 G 2013 S 2012
Encho Mishinev Bulgaria G 2017 G 2014 S 2016 S 2015 S 2013
Egor Lifar Russia G 2021 G 2019 S 2020 S 2018 S 2017
Harris Leung Hong Kong G 2021 G(III) 2020 S 2019 B 2018 B 2017
Zixiang Zhou Canada G 2022 G 2021 G 2020 G(III) 2019 S 2018
Wolfgang Thaller Austria G 1997 G 1996 S 1999 S 1998
Andrzej Gąsienica-Samek Poland G 1999 G 1998 G 1997 S 1996
Martin Pettai Estonia G 2002 G 2001 G 2000 S 1999
Alex Schwendner United States G 2005 G 2003 S 2004 S 2002
Filip Wolski Poland G(I) 2006 G 2005 G 2004 G 2003
Goran Žužić Croatia G 2008 G 2007 S 2009 B 2006
Vlad Alexandru Gavrilă Romania G 2013 G 2012 S 2011 B 2010
Eduard Batmendijn Slovakia G 2015 G 2013 G 2012 S 2014
Rareș Darius Buhai Romania G 2015 G 2014 G 2013 G 2012
Yuta Takaya Japan G(I) 2017 G 2016 G 2015 G 2014
Nikoloz Birkadze Georgia G 2020 G 2019 G 2018 S 2017
Dorijan Lendvaj Croatia G 2022 G 2021 S 2020 B 2019
Patrick Pavić Croatia G 2022 G 2021 G 2020 S 2019
Fredrik Huss Sweden GP(I) 1993 GP(I) 1992 S 1991
Martin Mareš Czech Republic G 1995 G 1994 GP(I) 1993
Vladimir Martianov Russia G 1999 GP(I) 1998 G(I) 1997
John Pardon United States G 2007 G 2006 G 2005
Marcin Andrychowicz Poland G 2008 G 2007 G 2006
Neal Wu United States G 2010 G 2009 G 2008
Shogo Murai Japan G 2012 G 2011 G 2010
Scott Wu United States GP(I) 2014 G 2013 G 2012
Jarosław Kwiecień Poland G 2016 G 2015 G 2014
Vladimir Romanov Russia G 2019 G 2018 G 2017
Masataka Yoneda Japan G 2020 G 2019 GU 2018
Daiki Kodama Japan G 2023 G 2022 G 2021

Feeder competitions

Most participating countries use feeder competitions to select their team. A number of these are listed below:

Notes

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

See also

References

  1. ^ a b Robson, Frank (10 August 2013). "Numbers game". The Sydney Morning Herald. Retrieved 17 August 2013.
  2. ^ "Contest Rules". IOI 2024 Egypt. Retrieved 2024-10-15.
  3. ^ "Competition Equipment". IOI 2024 Egypt. Arab Academy. Retrieved 29 July 2024.
  4. ^ a b "Minutes of the Meetings held in Kazan, Russian Federation" (PDF). ioinformatics.org. General Assembly of International Olympiad in Informatics. 19 August 2016. pp. 7, 11.
  5. ^ "IOI 2010 Waterloo". IOI 2010 Waterloo. University of Waterloo. Retrieved 29 July 2024.
  6. ^ Maggiolo, Stefano (2015). "An Update on the Female Presence at the IOI" (PDF). Olympiads in Informatics. 9, 127–137 (2015). London, U.K.: ioinformatics.org: 127–137. doi:10.15388/ioi.2015.10. Retrieved 13 July 2017.
  7. ^ "European Girls' Olympiad in Informatics". European Girls’ Olympiad in Informatics. European Girls’ Olympiad in Informatics.
  8. ^ "Zhezheng Luo". stats.ioinformatics.org.
  9. ^ Simões, Gabriel (31 July 2017). "IOI 2017, first round - Codeforces". Codeforces. Retrieved 4 August 2017. There is really only one USA contestant on site, it looks like he came with the Chinese team (straight from China).
  10. ^ "IOI 2017: Results". stats.ioinformatics.org.
  11. ^ "General Assembly Minutes of the Meetings held in Almaty, Kazakhstan 26 July – 2 August, 2015" (PDF).
  12. ^ "Number of Participants". ioi2022.id.
  13. ^ "IOI response to invasion of Ukraine". International Olympiad in Informatics. March 12, 2022. Retrieved September 28, 2024.
  14. ^ "IOI response to the conflict in Gaza". International Olympiad in Informatics. September 24, 2024. Retrieved September 28, 2024.
  15. ^ "IOI 1989 Results".
  16. ^ "IOI 1990 Results".
  17. ^ "IOI 1991 Results".
  18. ^ "IOI 1992 Results".
  19. ^ "IOI 1993 Results".
  20. ^ "IOI 1993 Website". ioi1993. Archived from the original on 1999-02-24. Retrieved 2024-03-07.
  21. ^ "IOI 1994 Results".
  22. ^ "IOI 1994 Website". ioi1994. Archived from the original on 1997-01-02. Retrieved 2024-03-07.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  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". ioi2005.
  35. ^ "IOI 2006 Results".
  36. ^ "IOI 2007 Results".
  37. ^ "IOI 2007 Website". ioi2007.
  38. ^ "IOI 2008 Results".
  39. ^ "IOI 2009 Results".
  40. ^ "IOI 2009 Website". ioi2009.org.
  41. ^ "IOI 2010 Results".
  42. ^ "IOI 2010 Website". ioi2010.org.
  43. ^ "IOI 2011 Results".
  44. ^ "IOI 2011 Website". ioi2011. Archived from the original on 2010-09-04. Retrieved 2010-07-28.
  45. ^ "IOI 2012 Results".
  46. ^ "IOI 2012 Website". ioi2012.org.
  47. ^ "IOI 2013 Results".
  48. ^ "IOI 2013 Website". ioi2013.org.
  49. ^ "IOI 2014 Results".
  50. ^ "IOI 2014 Website". ioi2014.org.
  51. ^ "IOI 2015 Results".
  52. ^ "IOI 2015 Website". ioi2017.kz.
  53. ^ "IOI 2016 Results".
  54. ^ "IOI 2016 Website". ioi2016.ru. Archived from the original on 2016-02-11. Retrieved 2023-08-16.
  55. ^ "IOI 2017 Results".
  56. ^ "IOI 2017 Website". ioi2017.org.
  57. ^ "IOI 2018 Results".
  58. ^ "IOI 2018 Website". ioi2018.jp.
  59. ^ "IOI 2019 Results".
  60. ^ "IOI 2019 Website". ioi2019.az. Archived from the original on 2022-04-01. Retrieved 2023-08-16.
  61. ^ "IOI 2020 Results".
  62. ^ "IOI 2020 Website". ioi2020.sg.
  63. ^ "IOI 2021 Results".
  64. ^ "IOI 2021 Website". ioi2021.sg.
  65. ^ "IOI 2022 Results".
  66. ^ "IOI 2022 Website". ioi2022.id.
  67. ^ "IOI 2023 Results".
  68. ^ "IOI 2023 Website". ioi2023.hu.
  69. ^ "IOI 2024 Results".
  70. ^ "IOI 2024 Website". ioi2024.eg.
  71. ^ "IOI 2025 Website". ioi2025.bo.
  72. ^ "IOI 2026 Website". ioi2026.uz.
  73. ^ "Hall of Fame". stats.ioinformatics.org.
  74. ^ http://olimpiada.info/Romanian National Informatics Olympiad Archived 2019-06-24 at the Wayback Machine
  75. ^ "Informatica Olympiade".
  76. ^ "Home — NOI.PH".