Международная студенческая олимпиада по программированию
Международная студенческая олимпиада по программированию (в английском принято сокращение ICPC, до 2017 — ACM ICPC), называемая также Студенческим командным чемпионатом мира по программированию ICPC — крупнейшая студенческая командная олимпиада по программированию.
История
Студенческий командный чемпионат мира по программированию ICPC уходит своими корнями в соревнование, проводившееся в Техасском университете в 1970. Свой нынешний облик чемпионат принял в 1977 году, когда первый финал был проведён в рамках ежегодной конференции ACM по информатике, и с тех пор проводится ежегодно[1][2].
До 2017 года чемпионат проводился под эгидой ассоциации вычислительной техники (ACM). Начиная с 1989 года, организацией соревнований занимается университет Бэйлора[1]. В разное время спонсорами соревнований становились такие компании, как Apple, AT&T и Microsoft[3], c 1997 по 2017 год генеральным спонсором являлась компания IBM[1][4], начиная с 2018 года глобальным спонсором средств программирования является компания JetBrains[4].
Россия, Азербайджан, Армения, Белоруссия, Грузия, Казахстан, Киргизия, Узбекистан составляют Северный Евразийский регион, ежегодно делегирующий на финальный турнир свои лучшие команды. Квота региона по числу команд с 2009 до 2013 года ежегодно увеличивалась: в 2009 году на финал было отправлено 11 команд, в 2010 — 12 команд, в 2011 — 13 команд, в 2012 — 16 команд, в 2013 — 19 команд, в 2014 — 17 команд[5]. Страны Балтии покинули Северо-Восточный Европейский полуфинальный регион: Эстония — в 2018 году[6], Литва и Латвия — в 2020 году[7].
В апреле 2024 года российские студенты факультета компьютерных наук, созданного Высшей школой экономики и Яндексом, стали абсолютными чемпионами мира в финале ICPC. Третье место в 47-м финале и пятое место в 46-м финале чемпионата заняла команда МФТИ[8].
В сентябре 2025 года команда Санкт-Петербургского государственного университета одержала победу на чемпионате мира по спортивному программированию в Баку[9].
Правила
Олимпиада — командное соревнование. Каждая команда состоит из трёх студентов. К участию допускаются студенты высших учебных заведений, а также аспиранты первого года обучения. Студенты, дважды участвовавшие в финальной стадии олимпиады, или пятикратно принимавшие участие в региональном отборе, не допускаются к участию. Есть ограничение по возрасту: участники старше 24 лет не допускаются[10].
Тур олимпиады происходит следующим образом: каждой команде выдаётся компьютер и от восьми до двенадцати задач, условия которых написаны на английском языке[11], на пять часов. Команды пишут решения на языках программирования C, C++, Java, Python или Kotlin набирая и компилируя программы, используя Ubuntu 18.04. LTS(2018 год) , и посылают их на тестирующий сервер. Во время некоторых региональных туров набор языков может быть изменён. Так, например, при проведении четвертьфинала по северо-восточному региону участникам доступен Паскаль[11]. Программы тестируются на большом количестве различных входных тестов, неизвестных участникам. Если программа выдала неправильный ответ или не уложилась в ограничения по времени или памяти, то пославшая её команда получает об этом сообщение и может послать исправленную версию. Задача считается решённой, если программа выдала правильные ответы на всех тестах. В отличие от других олимпиад, частичные решения не учитываются.
Побеждает команда, решившая правильно наибольшее число задач. Если несколько команд решают одинаковое количество задач, то их положение в рейтинге определяется штрафным временем. Изначально штрафное время каждой команды равно нулю. За каждую правильно сданную задачу к штрафному времени команды прибавляют время, прошедшее с начала соревнования до момента сдачи задачи. Кроме того, если зачтённой попытке предшествовало несколько неудачных попыток сдать ту же задачу, то за каждую из них к штрафному времени прибавляют двадцать минут. За неудачные попытки сдать задачу, которую команде в итоге так и не удалось решить, штрафного времени не начисляется[12].
От других олимпиад по информатике эта олимпиада отличается повышенным количеством задач, на которые отводится сравнительно небольшое время. Учитывая, что в распоряжении каждой команды находится только один компьютер, навыки эффективной и слаженной командной работы выходят на первый план.
Многие университеты проводят свои олимпиады используя формат ICPC, поскольку данный формат может считаться одним из самых удачных.
Этапы
Олимпиада проводится на нескольких уровнях. Многие университеты проводят внутренние соревнования, чтобы определить своих представителей на региональном уровне. Затем проводятся региональные олимпиады, победители которых отправляются на финальный этап мирового первенства. В региональных соревнованиях один университет может быть представлен несколькими командами, но на финал может отправиться только одна команда от университета.
Победители
Чемпионами мира с 1977 года становились:
| Год | Место проведения | Победитель | Состав команды | Тренер |
|---|---|---|---|---|
| 2025 | Максим Туревский, Леонид Данилевич, Фёдор Ушаков | |||
| 2023 | Фёдор Ромашов, Александр Бабин, Кирилл Кудряшов | |||
| 2020* | Алексей Данилюк, Николай Калинин, Валерия Рябчикова | Алексей Шмелев | ||
| 2019 | Михаил Ипатов, Владислав Макеев, Григорий Резников | Елена Андреева | ||
| 2018 | Михаил Ипатов, Владислав Макеев, Григорий Резников | Елена Андреева | ||
| 2017 | Иван Белоногов, Илья Збань, Владимир Смыкалов | Андрей Станкевич | ||
| 2016 | Станислав Ершов, Алексей Гордеев, Игорь Пышкин | Андрей Лопатин | ||
| 2015 | Геннадий Короткевич, Борис Минаев, Артём Васильев | Андрей Станкевич | ||
| 2014 | Дмитрий Егоров, Павел Кунявский, Егор Суворов | Андрей Лопатин | ||
| 2013 | Михаил Кевер, Геннадий Короткевич, Нияз Нигматуллин | Андрей Станкевич | ||
| 2012 | Евгений Капун, Михаил Кевер, Нияз Нигматуллин | Андрей Станкевич | ||
| 2011 | Мо Луи (Luyi Mo), Оуян Цзялинь (Jialin Ouyang), У Цзэцзюнь (Zejun Wu) | Ван Цань (Can Wang) | ||
| 2010 | Цзинь Бинь (Bin Jin), У Чжоцзе (Zhuojie Wu), Чжэн Чжао (Zhao Zheng) | Юй Юн (Yong Yu) | ||
| 2009 | Владислав Исенбаев, Максим Буздалов, Евгений Капун | Андрей Станкевич | ||
| 2008 | Дмитрий Абдрашитов, Дмитрий Паращенко, Фёдор Царёв | Андрей Станкевич | ||
| 2007 | Филип Вольски (Filip Wolski), Марцин Пилипчук (Marcin Pilipczuk), Марек Цыган (Marek Cygan) | Ян Мадей (Jan Madey) | ||
| 2006 | Роман Алексеенков, Игорь Кулькин, Иван Романов | Михаил Мирзаянов | ||
| 2005 | Дай Вэньюань (Wenyuan Dai), Чжао Шуан (Shuang Zhao), Ян Бохай (Bohai Yang) | Юй Юн (Yong Yu) | ||
| 2004 | Дмитрий Павлов, Павел Маврин, Сергей Оршанский | Андрей Станкевич | ||
| 2003 | Томаш Чжайка (Tomasz Czajka), Кшиштоф Онак (Krzysztof Onak), Анджей Гасиница-Самек (Andrzej Gasienica-Samek) | Ян Мадей (Jan Madey) | ||
| 2002 | Линь Чэньси (Chenxi Lin), Чжоу Цзянь (Jian Zhou), Лу Цзин (Jing Lu) | Юй Юн (Yong Yu) | ||
| 2001 | Николай Дуров, Андрей Лопатин, Виктор Петров | Дмитрий Ломов | ||
| 2000 | Николай Дуров, Андрей Лопатин, Олег Етеревский | Наталья Вояковская | ||
| 1999 | Ондрей Лхотак (Ondrej Lhotak), Вьет-Тунг Луу (Viet-Trung Luu), Дэвид Кеннеди (David Kennedy), Донни Чунг (Donny Cheung) | Гордон Кормак (Gordon Cormack) | ||
| 1998 | Иржи Хаек (Jiri Hajek), Павел Машек (Pavel Machek), Мартин Марес (Martin Mares) | Павел Топфер (Pavel Töpfer) | ||
| 1997 | Брайан Карнс (Brian Carnes), Брайан Джонсон (Brian Johnson), Кевин Уоткинс (Kevin Watkins), Доминик Маццони (Dominic Mazzoni) | Роберт Келлер (Robert Keller) | ||
| 1996 | Бен Рудиак-Гулд (Ben Rudiak-Gould), Амит Сахай (Amit Sahai), Скотт МакПик (Scott McPeak) | Пол Хилфингер (Paul Hilfinger) | ||
| 1995 | Маттиас Руль (Matthias Ruhl), Кристиан Ветцль (Christian Wetzel), Филипп Земброд (Phillip Zembrod) | |||
| 1994 | Сейджи Андо (Seiji Ando), Ян Голдберг (Ian Goldberg), Ка-Пин Йи (Ka-Ping Yee) | Джо Эберген (Jo Ebergen) | ||
| 1993 | Деррик Басс (Derrick Bass), Тони Шей, Крейг Сильверстайн (Craig Silverstein) | |||
| 1992 | Эндрю Конвей (Andrew Conway), Крейг Диллон (Craig Dillon), Стивен Симмонс (Stephen Simmons) | |||
| 1991 | Майкл Патрик Фрэнк (Michael Patrick Frank), Шон Куинлан (Sean Quinlan), Дэвид Магерман (David Magerman), Карл Уитти (Carl Witty) | |||
| 1990 | John Gee, Craig McNaughton, Paul Sharp, Bruce Warrington | |||
| 1989 | Seth Goldman, Alex Quilici, Matthew Marzbacher, Scott Turner | |||
| 1988 | Dave Gillespie, Adam Greenblatt, Ron Goodman, Scott Hemphill | |||
| 1987 | Bob Alverson, Tomas Rokicki, Ali Tabibian, Lei Zhu | |||
| 1986 | Steve Burns, Tim Kay, Dave Gillespie, Steve Rabin, Rajiv Gupta | |||
| 1985 | Michael Dixon, Micheal Hewett, Vivek Sarkar, Joseph Weening | |||
| 1984 | Michael Baldwin, Robert Strandh, John Walker, Richard Washington | Joseph O’Rourke | ||
| 1983 | Mark Tuttle, Thane Plambeck, David Leavitt, Paul Petersen | |||
| 1982 | Keith Hall, Patrick Keane, Jennifer Harmon, Terry Talley | Don Gaitros | ||
| 1981 | Кристофер Фройнд (Christopher Freund), Майкл Ричи (Michael Richey), Джеймс Симмонс (James Simmons), Кэтрин Пирон Физелер (Catherine Pyron Fieseler) | |||
| 1980 | Стив Карасек (Steve Karasek), Натан Шредер (Nathan Schroeder), Майк Зайда (Mike Zyda), Дэйв Кэмп (Dave Camp) | |||
| 1979 | Стив Карасек (Steve Karasek), Натан Шредер (Nathan Schroeder), Дэвид Доти (David Doty), Дэйв Кэмп (Dave Camp) | |||
| 1978 | ||||
| 1977 |
* .



