Международная студенческая олимпиада по программированию
Международная студенческая олимпиада по программированию (в английском принято сокращение 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].
Правила[править | править вики-текст]
Олимпиада — командное соревнование. Каждая команда состоит из трёх студентов. К участию допускаются студенты высших учебных заведений, а также аспиранты первого года обучения. Студенты, дважды участвовавшие в финальной стадии олимпиады, или пятикратно принимавшие участие в региональном отборе, не допускаются к участию. Есть ограничение по возрасту: участники старше 24 лет не допускаются[5].
Тур олимпиады происходит следующим образом: каждой команде выдаётся компьютер и от восьми до двенадцати задач, условия которых написаны на английском языке[6], на пять часов. Команды пишут решения на языках программирования C, C++ или Java и посылают их на тестирующий сервер. Во время некоторых региональных туров набор языков может быть изменен. Так, например, при проведении четвертьфинала по северо-восточному региону участникам доступен Паскаль[6]. Программы тестируются на большом количестве различных входных тестов, неизвестных участникам. Если программа выдала неправильный ответ или не уложилась в ограничения по времени или памяти, то пославшая её команда получает об этом сообщение и может послать исправленную версию. Задача считается решённой, если программа выдала правильные ответы на всех тестах. В отличие от других олимпиад, частичные решения не учитываются.
Побеждает команда, решившая правильно наибольшее число задач. Если несколько команд решают одинаковое количество задач, то их положение в рейтинге определяется штрафным временем. Изначально штрафное время каждой команды равно нулю. За каждую правильно сданную задачу к штрафному времени команды прибавляют время, прошедшее с начала соревнования до момента сдачи задачи. Кроме того, если зачтённой попытке предшествовало несколько неудачных попыток сдать ту же задачу, то за каждую из них к штрафному времени прибавляют двадцать минут. За неудачные попытки сдать задачу, которую команде в итоге так и не удалось решить, штрафного времени не начисляется[7].
От других олимпиад по информатике эта олимпиада отличается повышенным количеством задач, на которые отводится сравнительно небольшое время. Учитывая, что в распоряжении каждой команды находится только один компьютер, навыки эффективной и слаженной командной работы выходят на первый план.
Многие университеты проводят свои олимпиады используя формат ACM ICPC, поскольку данный формат может считаться одним из самых удачных.
Этапы[править | править вики-текст]
Олимпиада проводится на нескольких уровнях. Многие университеты проводят внутренние соревнования, чтобы определить своих представителей на региональном уровне. Затем проводятся региональные олимпиады, победители которых отправляются на финальный этап мирового первенства. В региональных соревнованиях один университет может быть представлен несколькими командами, но на финал может отправиться только одна команда от университета.
Победители[править | править вики-текст]
Чемпионами мира с 1977 года становились:
| Год | Место проведения | Победитель | Состав команды | Тренер |
|---|---|---|---|---|
| 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, Tony Hsieh, 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 |
Примечания[править | править вики-текст]
- ↑ 1 2 3 The ACM International Collegiate Programming Contest Fact Sheet, Fourth Edition (англ.) (28 декабря 2008). Проверено 3 декабря 2010. Архивировано из первоисточника 22 августа 2011.
- ↑ CSC '77 Proceedings of the 5th annual ACM computer science conference (англ.) (1977). Проверено 3 декабря 2010.
- ↑ 1 2 ACM International Collegiate Programming Contest Team Participation Since 1989 (англ.). Проверено 3 декабря 2010. Архивировано из первоисточника 22 августа 2011.
- ↑ Northeastern European Regional Contest
- ↑ Rules of the 2008 ICPC Regional Contests (англ.) (27 февраля 2008). Проверено 3 декабря 2010. Архивировано из первоисточника 22 августа 2011.
- ↑ 1 2 :: ACM ICPC, NEERC, Southern Subregion :: Порядок и правила проведения соревнований
- ↑ The Rules of the 2009 ACM-ICPC World Finals (англ.) (8 апреля 2008). Проверено 3 декабря 2010. Архивировано из первоисточника 22 августа 2011.
Ссылки[править | править вики-текст]
| Раздел ссылок нуждается в переработке. |
- ACM/ICPC — главная страница олимпиады.
- Архив задач Университета Вальядолида
- Архив задач Уральского Государственного Университета
- Архив задач Саратовского Государственного Университета
- Новости соревнований по программированию
- Архив задач Пекинского Университета
- Архив задач Sphere Online Judge (поддерживается более 30 языков программирования)
- Олимпиады по программированию на Физтехе: информация, online-контест МФТИ, учебные материалы по алгоритмам и языкам программирования
- Сообщество русских участников чемпионата в ЖЖ
- Международные индивидуальные соревнования. Могут участвовать не только студенты
- Социальная сеть и открытые регулярные соревнования по программированию Codeforces


