Международная студенческая олимпиада по программированию

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Логотип ACM ICPC

Международная студенческая олимпиада по программированию (в английском принято сокращение ACM/ICPC или просто ICPC) — крупнейшая студенческая командная олимпиада по программированию.

История[править | править вики-текст]

Международный командный чемпионат по программированию уходит своими корнями в соревнование, проводившееся в Техасском университете в 1970. Свой нынешний облик чемпионат принял в 1977 году, когда первый финал был проведен в рамках ежегодной конференции ACM по информатике, и с тех пор проводится ежегодно[1][2].

Чемпионат проводится под эгидой ассоциации вычислительной техники (ACM). Начиная с 1989 года, организацией соревнований занимается университет Бэйлора[1]. В разное время спонсорами соревнований становились такие компании, как Apple, AT&T и Microsoft[3], однако с 1997 года по настоящее время генеральным спонсором является компания IBM[1].

С 1977 по 1989 в олимпиаде преимущественно участвовали команды вузов из США и Канады. К настоящему моменту олимпиада превратилась во всемирное соревнование: в 2009 году в ней приняло участие 7109 команд из 88 стран, 100 из которых сошлись в борьбе за главный трофей в финальном турнире[3]. Количество команд продолжает расти на 10-20 % в год, так что в будущем соревнования обещают стать ещё представительнее.

Россия и такие страны бывшего СССР, как Азербайджан, Армения, Беларусь, Грузия, Казахстан, Киргизия, Латвия, Литва, Узбекистан, Эстония, входят в Северо-Восточный Европейский регион, ежегодно делегирующий на финальный турнир свои лучшие команды. Квота региона по количеству команд до 2013 года ежегодно увеличивалась: на финал 2011 было отправлено 12 команд, на 2012 — 16 команд, на 2013 — 19 команд, на 2014 — 17 команд[4].

Правила[править | править вики-текст]

Команда ИТМО, победителей 2015 года

Олимпиада — командное соревнование. Каждая команда состоит из трёх студентов. К участию допускаются студенты высших учебных заведений, а также аспиранты первого года обучения. Студенты, дважды участвовавшие в финальной стадии олимпиады, или пятикратно принимавшие участие в региональном отборе, не допускаются к участию. Есть ограничение по возрасту: участники старше 24 лет не допускаются[5].

Тур олимпиады происходит следующим образом: каждой команде выдаётся компьютер и от восьми до двенадцати задач, условия которых написаны на английском языке[6], на пять часов. Команды пишут решения на языках программирования C, C++ или Java и посылают их на тестирующий сервер. Во время некоторых региональных туров набор языков может быть изменен. Так, например, при проведении четвертьфинала по северо-восточному региону участникам доступен Паскаль[6]. Программы тестируются на большом количестве различных входных тестов, неизвестных участникам. Если программа выдала неправильный ответ или не уложилась в ограничения по времени или памяти, то пославшая её команда получает об этом сообщение и может послать исправленную версию. Задача считается решённой, если программа выдала правильные ответы на всех тестах. В отличие от других олимпиад, частичные решения не учитываются.

Побеждает команда, решившая правильно наибольшее число задач. Если несколько команд решают одинаковое количество задач, то их положение в рейтинге определяется штрафным временем. Изначально штрафное время каждой команды равно нулю. За каждую правильно сданную задачу к штрафному времени команды прибавляют время, прошедшее с начала соревнования до момента сдачи задачи. Кроме того, если зачтённой попытке предшествовало несколько неудачных попыток сдать ту же задачу, то за каждую из них к штрафному времени прибавляют двадцать минут. За неудачные попытки сдать задачу, которую команде в итоге так и не удалось решить, штрафного времени не начисляется[7].

От других олимпиад по информатике эта олимпиада отличается повышенным количеством задач, на которые отводится сравнительно небольшое время. Учитывая, что в распоряжении каждой команды находится только один компьютер, навыки эффективной и слаженной командной работы выходят на первый план.

Многие университеты проводят свои олимпиады используя формат ACM ICPC, поскольку данный формат может считаться одним из самых удачных.

Этапы[править | править вики-текст]

Олимпиада проводится на нескольких уровнях. Многие университеты проводят внутренние соревнования, чтобы определить своих представителей на региональном уровне. Затем проводятся региональные олимпиады, победители которых отправляются на финальный этап мирового первенства. В региональных соревнованиях один университет может быть представлен несколькими командами, но на финал может отправиться только одна команда от университета.

Победители[править | править вики-текст]

Чемпионами мира с 1977 года становились:

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

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]