国际信息学奥林匹克竞赛

国际信息学奥林匹克竞赛（International Olympiad in Informatics，缩写：IOI），是面向中学生一年一度的资讯学科竞赛。第一届国际信息学奥林匹克竞赛于1989年在保加利亚的布拉维茨举行。

这项竞赛包含两天的计算机程序设计，主要编程语言以C++为主，解决各类算法问题。选手以个人为单位，每个国家最多可选派4名选手参加（2016年共有83个国家参赛）。参赛选手从各国相应计算机竞赛中选拔。

## 竞赛规则

<image>

在两天的比赛日中，一般来说参赛选手每一天都需要在5小时内在一台计算机的帮助下独立解决3道题目。比赛中不允许任何形式的交流或是查阅参考资料。通常，参赛选手都要为每一道题目编写一个程序（编程语言为C、C++或是Pascal）并在比赛结束之前提交。随后大赛的主办方将采用若干组测试数据对程序进行测试。这些测试数据被分作若干个子任务，选手只有通过某个子任务中所有的测试点才能获得对应的分数。如果根据给定的某一组输入数据，程序可以在限定的内存空间和时间内正确的得到输出结果，那么该名选手即获得这一组数据的相应分数。

每名参赛选手的各题得分之和即为总得分。在颁奖仪式上，参赛选手将根据他们的得分获得相应的奖项。排名前50%的参赛选手（平均每个国家2名）将获得奖牌。获得金、银、铜牌和未获奖牌人数之比约为1:2:3:6。

与其他学科的奥林匹克竞赛不同，国际信息学奥林匹克竞赛章程严格禁止对参赛国家的排名，但是每场比赛之后仍然会有不少非官方的排名出现。

<image>

## 历届比赛地点和网站链接

- IOI 2029即将于2029年在保加利亚举行。
- IOI 2028即将于2028年在日本举行。
- IOI 2027即将于2027年在德国举行。
- IOI 2026即将于2026年在乌兹别克斯坦举行。
- IOI 2025即将于2025年在玻利维亚举行。
- IOI 2024已于2024年9月1日—9月8日在埃及的亚历山大港举行。
- IOI 2023已于2023年8月28日—9月4日在匈牙利的塞格德举行。网站 （比赛结果）
- IOI 2022已于2022年8月7日—8月15日在印尼的日惹举行。网站 （比赛结果）
- IOI 2021与2020年相同，因COVID-19疫情，改为线上赛。
- IOI 2020因COVID-19疫情，原定于2020年在新加坡举行，改为线上赛。
- IOI 2019已于2019年8月4日—8月11日在阿塞拜疆的巴库举行。网站（比赛结果)
- IOI 2018已于2018年9月1日—9月8日在日本的筑波举行。网站（比赛结果)
- IOI 2017已于2017年7月28日—8月4日在伊朗的德黑兰举行。网站( 比赛结果)
- IOI 2016已于2016年8月12日—8月19日在俄罗斯的喀山举行。网站 ( 比赛结果)
- IOI 2015已于2015年7月26日—8月2日在哈萨克斯坦的阿拉木图举行。网站 ( 比赛结果)
- IOI 2014已于2014年7月13日—7月20日在台湾的台北市举行。网站( 比赛结果)
- IOI 2013已于2013年7月6日—7月13日在澳大利亚的布里斯班举行。网站（比赛结果）
- IOI 2012已于2012年9月23日—9月30日在意大利的米兰举行。网站（比赛结果）
- IOI 2011已于2011年7月22日—7月29日在泰国的芭达亚举行。网站（比赛结果）
- IOI 2010已于2010年8月14日—8月21日在加拿大的滑铁卢举行。网站（比赛结果）
- IOI 2009已于2009年8月8日—8月14日在保加利亚的普罗夫迪夫举行。网站（比赛结果）
- IOI 2008已于2008年8月16日—8月23日在埃及的开罗举行。网站( 比赛结果)
- IOI 2007已于2007年8月15日—8月22日在克罗地亚的札格拉布举行。网站（比赛结果）
- IOI 2006已于2006年8月13日—8月20日在墨西哥的梅里达举行。( 比赛结果)
- IOI 2005已于2005年8月17日—8月25日在波兰的新松奇举行。网站（比赛结果）
- IOI 2004已于2004年9月11日—9月18日在希腊的雅典举行。网站（比赛结果）
- IOI 2003已于2003年8月16日—8月23日在美国的威斯康星举行。网站（比赛结果）
- IOI 2002已于2002年8月18日—8月25日在韩国京畿道的龙仁举行。网站( 比赛结果)
- IOI 2001已于2001年7月14日—7月21日在芬兰的坦佩雷举行。网站( 比赛结果)
- IOI 2000已于2000年9月23日—9月30日在中国大陆的北京举行。网站( 比赛结果)
- IOI 1999已于1999年9月9日—9月16日在土耳其的安塔利亚举行。网站( 比赛结果)
- IOI 1998已于1998年9月5日—9月12日在葡萄牙的塞图巴尔举行。( 比赛结果)
- IOI 1997已于1997年11月30日—12月7日在南非的开普敦举行。( 比赛结果)
- IOI 1996已于1996年7月25日—8月2日在匈牙利的维斯普雷姆举行。网站( 比赛结果)
- IOI 1995已于1995年6月26日—7月3日在荷兰的埃因霍温举行。网站( 比赛结果)
- IOI 1994已于1994年7月3日—7月10日在瑞典的哈宁厄市举行。( 比赛结果)
- IOI 1993已于1993年10月16日—10月25日在阿根廷的门多萨举行。网站( 比赛结果)
- IOI 1992已于1992年7月11日—7月21日在德国的波恩举行。( 比赛结果)
- IOI 1991已于1991年5月19日—5月25日在希腊的雅典举行。( 比赛结果)
- IOI 1990已于1990年7月15日—7月21日在前苏联白俄罗斯的明斯克举行。( 比赛结果)
- IOI 1989已于1989年5月16日—5月19日在保加利亚的普拉韦茨举行。( 比赛结果)

## 惩罚措施

因应入侵乌克兰事件，来自俄罗斯和白罗斯的学生，从IOI 2022开始只能以个人身份用IOI会旗参赛，不得以国家代表队参赛。他们在IOI 2022仅准在线上作赛，不过自IOI 2023起可以回到会场比赛。

因应以色列入侵加沙，造成严重人道危机事件，来自以色列的学生，从IOI 2025开始只能以个人身份用IOI会旗参赛，不得以国家代表队参赛。这项制裁在IOI大会获得超过三分之二的代表队投票赞成。

## 历届得奖者

这是一份历届最优秀得奖者的名单。*号代表满分，这在国际信息学奥林匹克中是十分罕见的。另外，金奖中的第一名，第二名和第三名也有标示。这份名单只包含那些容许选拔后的国家队成员多次参与国际信息学奥林匹克的国家。

名字｜国家｜年份

Генадзь Караткевіч｜白俄罗斯｜金（第二名） 2012｜金、（第一名） 2011｜金（第一名） 2010｜金（第一名） 2009｜金 2008｜金 2007｜银 2006

Zixiang Zhou｜加拿大｜金 2022｜金 2021｜金 2020｜金（第三名） 2019｜银 2018

Hristo Venev｜保加利亚｜金 2016｜金 2015｜金 2014｜金 2013｜银 2012

Filip Wolski｜波兰｜金（第一名） 2006｜金 2005｜金 2004｜金 2003

Rumen Hristov｜保加利亚｜金 2012｜金 2011｜金(第二名) 2010｜银 2009｜银 2008

Martin Pettai｜爱沙尼亚｜金 2002｜金 2001｜金 2000｜银 1999

Andrzej Gąsienica-Samek｜波兰｜金 1999｜金 1998｜金 1997｜银 1996

Владимир Мартинов｜俄罗斯｜金 1999｜金、（第一名） 1998｜金（第一名） 1997

Martin Mareš｜捷克｜金 1995｜金 1994｜金 1993

约翰·帕登｜美国｜金 2007｜金 2006｜金 2005

Marcin Andrychowicz｜波兰｜金 2008｜金 2007｜金 2006

Neal Wu｜美国｜金 2010｜金 2009｜金 2008

Alex Schwendner｜美国｜金 2005｜金 2003｜银 2004｜银 2002

Wolfgang Thaller｜奥地利｜金 1997｜金 1996｜银 1999｜银 1998

Bruce Merry｜南非｜金 2001｜金 2000｜银 1999｜铜 1998｜铜 1997｜铜 1996

Goran Žužić｜克罗地亚｜金 2008｜金 2007｜银 2009｜铜 2006

Виктор Баргачев｜俄罗斯｜金（第一名） 1995｜金（第一名） 1994｜银 1993

Mihai Pătrașcu｜罗马尼亚｜金（第二名） 2001｜金 2000｜银 1999

Роман Пастоков｜俄罗斯｜金 2000｜金（第二名） 1999｜银 2001

Piotr Zieliński｜波兰｜金 1997｜金（第三名） 1996｜银 1995

Miroslav Dudík｜斯洛伐克｜金 1997｜金 1996｜银 1995

Richard Královič｜斯洛伐克｜金 1999｜金 1998｜银 1997

Tomasz Czajka｜波兰（1998, 2000），英国（1999）｜金 2000｜金 1999｜银 1998

Пётр Митричев｜俄罗斯｜金 2002｜金 2000｜银 2001

Luka Kalinovčić｜克罗地亚｜金 2004｜金 2003｜银 2002

Rostislav Rumenov｜保加利亚｜金 2007｜金 2006｜银 2005

Владислав Епифанов｜俄罗斯｜金 2008｜金 2007｜银 2009

Cosmin Gheorghe｜罗马尼亚｜金 2009｜金 2008｜银 2007

Pasin Manurangsi｜泰国｜金 2011｜金 2010｜银 2009

Wenyu Cao｜美国｜金 2011｜金 2010｜银 2009

Tzvetomir Petrov｜保加利亚｜金（第一名） 1990｜金 1993｜铜 1991

David Arthur｜加拿大｜金（第二名） 2000｜金 1999｜铜 1998

Janis Sermulins｜拉脱维亚｜金 1999｜金（第二名） 1997｜铜 1998

Teodor Tonchev｜保加利亚｜金（第一名） 1989｜金（第三名） 1990

村井翔悟｜日本｜金 2010｜金 2012｜金 2011

陈宏亮｜中国｜金（第二名） 2000｜金（第一名） 1999

胡伟栋｜中国｜金、（第一名） 2005｜金（第二名） 2004

Johnny Ho｜美国｜金、（第一名） 2012｜金 2011

Reid Barton｜美国｜金（第一名） 2001｜金 2000

保坂和宏｜日本｜金（第二名） 2009｜金 2008

Velin Tzanov｜保加利亚｜金（第三名） 2002｜金 2001

## 外部链接

- APIO-亚太资讯奥林匹亚
- NOI Chief Technology Officer - Jerry. Lee
- IOI 2014
- IOI 2013
- IOI 2006
- IOI 2007
- IOI 2008
- ACM International Collegiate Programming Contest
- 国际资讯奥林匹亚（IOI）竞赛简介 (何荣桂，国立台湾师范大学资讯教育系所教授)
- TOI-台湾资讯奥林匹亚竞赛