Logo
SnarkNews
 

Среди финалистов индивидуального чемпионата мира по программированию - 3 россиянина и один украинец.

Скачать пресс-релиз (.HTML)

15 мая в Лас-Вегасе (США) прошёл TopCoder Open - 2008, фактически являющийся чемпионатом мира по программированию в индивидуальном зачёте. Наряду с TopCoder Collegiate Challenge (в котором могут участвовать только студенты и аспиранты) - это одно из трёх главных индивидуальных соревнований по программированию года. Популярность TopCoder Open (или, как его принято сокращать, TCO) велика: так, в этом году в отборе на TopCoder Open участвовали 3980 сильнейших программистов, представляющих вузы со всего мира. В полуфиналах приняли участие 72 победителя отборочных раундов, выявивших 9 финалистов и 12 участников переходного турнира, победитель которого получает последнюю, десятую путёвку в финал. Среди десяти сильнейших программистов планеты трое представляли Россию. Это наибольшее представительство России в финалах TopCoder Open за всё время их проведения (с 2003 года). Выиграв финал, первое место занял победитель первого и второго розыгрышей TopCoder Open Томаш Чайка из Польши. На втором месте - победитель TopCoder Open 2006 года, аспирант мехмата Московского Государственного Университета им. М.В. Ломоносова Пётр Митричев, на третьем - также представитель Польши, победитель TopCoder Open 2005 года Эрик Копчиньский.
Результаты TopCoder Open - 2008, а также статистику по участникам, странам, университетам и историю проведения соревнований можно найти на русскоязычном портале snarknews.info, освещающем соревнования по программированию, в специальном проекте, посвящённом TopCoder Open - 2008.

TopCoder, Inc - компания, являющаяся мировым лидером в области организации онлайновых соревнований по программированию. Ежегодно проводит два турнира TopCoder Open (фактически открытый личный чемпионат мира) и TopCoder Collegiate Challenge (фактически студенческий личный чемпионат мира), а также множество онлайн-соревнований. Разработанная TopCoder система соревнований, позволяющая участнику получать баллы не только за решение задач, но и за нахождение ошибок в решениях оппонентов, и использовалась не только для соревнований, организуемых TopCoder, но и, например, для проведения Google Code Jam. Задания, предлагаемые на соревнованиях TopCoder, представляют из себя сложные алгоритмические задачи, решение которых требует как теоретических, так и практических навыков. Чтобы быть засчитанным, решение участника должно пройти определённый набор тестов. Баллы, начисляемые за задачу, зависят от сложности задачи и от времени сдачи решения. Лидеры начисляемого участникам соревнований TopCoder рейтинга считаются лидерами спортивного программирования в мире. Кроме соревнований по спортивному программированию, TopCoder также проводит соревнования по проектированию и разработке компонент программного обеспечения.

В этом году финал TopCoder Open, несомненно, выдался захватывающим. Перед началом Challenge Phase (стадии, на которой участники могут предлагать контрпримеры к программам оппонентов, получая за каждое успешное такое действие 50 баллов, и соответственно теряя 25 баллов за каждое безуспешное) лидер - Томаш Чайка - опережал Петра Митричева на 137.5 балла. Однако Пётр сумел построить контрпримеры к решениям двух участников, сократив разрыв до 37.5 балла, а затем, в последнюю минуту, к решению ещё одного участника, выйдя вперёд на 12.5 балла. После чего Томек менее, чем за минуту до конца отправил построенный контрпример к решению ещё одного из соперников по финалу, и вернул себе лидерство - всё решилось в последние секунды, и финал по зрелищности не уступал финалам крупнейших спортивных состязаний. Именно поэтому для таких турниров используется термин "спортивное программирование".

Отбор на онсайт-раунд проводился через Интернет по многоступенчатой схеме: сначала - квалификационный раунд, состоящийиз трёх секций (для удобства участников из разных часовых поясов), по результатам которых были отобраны 1800 лучших участников. Затем - четыре отборочных раунда: из первого 900 лучших участников выходят во второй раунд, далее из второго раунда 300 лучших выходят в третий, из третьего 150 лучших - в четвёртый, в котором и разыгрывается 72 путёвки в полуфиналы. На этой стадии российские участники выступили успешно: из 72 полуфиналистов 13 представляли Российскую Федерацию (при том, что части прошедших россиян не удалось решить визовые проблемы для въезда в США), что составляет второй результат после Польши, делегировавшей 17 полуфиналистов. 9 участников представляли Китай, 6 - Украину, остальные страны - по 4 и менее участников.
Для участия в полуфиналах и финале участники были собраны в Лас-Вегасе (США), при этом все расходы взяли на себя организаторы. Призовой фонд составил $70000. При этом победитель получил $15000, за 2 место полагается $8000, за 3 - $6000, за 4 - $4000, остальные участники финала - по $1000, полуфиналисты, не вышедшие в финал - по $500.

В целом российские участники показали отличный результат: 3 из 9 участников, прошедших в финал напрямую (из них 2 из 3 выиграли свой полуфинал) и 4 из 12 участников переходного турнира представляли Россию. В финале участвовали три участника из России, два - из Польши и по одному - из Украины, Китая, Австралии, Швеции и Индонезии.

Пётр Митричев, занявший второе место на TopCoder Open-2008, в 2006 году установил уникальное достижение. Он выиграл и TopCoder Open-2006, и Google Code Jam-2006 и TopCoder Collegiate Challenge-2006, таким образом, он стал первым в истории участником, которому удалось в один год одержать победу во всех трёх крупнейших мировых индививидуальных турнирах по спортивному программированию. На проходившем в июне 2007 года TopCoder Open-2007 Пётр не сумел выйти в полуфинал, на TopCoder Collegiate Challenge-2007 он снова одержал уверенную победу, и вот сейчас на TopCoder Open-2008, который для Петра являлся уже третьим финалом TCO, Пётр в упорной и красивой борьбе занял второе место.
Пётр участвует в соревнованиях по программированию с шестого класса, трижды был абсолютным победителем Всероссийских и призёром Международных олимпиад школьников по информатике. Поступив в МГУ, Пётр продолжил участие в соревнованиях по программированию и дважды (в 2003 и в 2005 годах) становился вице-чемпионом мира по программированию в рамках Чемпионатов Мира ACM среди студенческих команд в составе двух различных команд МГУ. Интересно, что в 2003 году команда, в составе которой был Пётр, уступила в финале только команде Варшавского Университета, в которой участвовал Томаш Чайка, впоследствиии многократный победитель TopCoder Open. Так как участие студентов в финале Чемпионата Мира ACM ограничено двумя годами, то Пётр сосредоточился на открытых соревнованиях. В 2005 году он впервые вышел в финал TopCoder Open-2005, где занял четвёртое место. В мае 2006 года он стал победителем TopCoder Open-2006, в июне - занял второе место в Google Code Jam Europe, проходившем в Дублине, в ноябре того же года выиграл всемирный Google Code Jam в Нью-Йорке и TopCoder Collegiate Challenge - 2006. Также стоит отметить, что Пётр три года подряд является победителем Открытого Кубка по программированию - крупнейшего открытого регулярного командного соревнования по программированию, проводимого с использованием Интернет в СНГ и ряде государств Восточной Европы. Последнее достижение тем более значимо, что в сезоне 2007-2008 в Открытом Кубке Пётр участвовал один - в то время как в большинстве других команд было по 3 участника. В течение 2008 года Пётр лидировал в рейтинге TopCoder, а перед TopCoder Open-2008 его рейтинг достиг рекордного для всех участников за всю историю TopCoder значения 3890.
Пётр активно участвует в подготовке школьных сборных России на Международных олимпиадах по информатике, в подготовке студенческих команд, в проведении различных летних школ по программированию.

Занявший 5 место второкурсник СПбГУ Сергей Копелиович, будучи школьником, дважды завоёвывал золотую медаль на Международных олимпиадах школьников по информатике. На первом курсе он участвовал в онсайт-раунде TopCoder Collegiate Challenge - 2007, где вышел в переходный турнир. В полуфинале TopCoder Open-2008 Сергей занял первое место, обойдя, в частности, будущего победителя Томаша Чайку.

Для разделившего 6-9 места в финале Андрея Станкевича, тренера команд СПбГУ ИТМО на чемпионатах мира по программированию, это уже второй финал TopCoder Open - в первый раз Андрей вышел в финал в 2006 году через переходный турнир, а в этом году Андрей вышел в финал с первого места в своём полуфинале. Заметим, что в 2007 году в финале TCO участвовал Михаил Дворкин - один из учеников Андрея Станкевича, таким образом, представители СПбГУ ИТМО, команда которого является действующим чемпионом мира по программированию по версии ACM, выходят в финал TopCoder Open уже третий год подряд, что является вторым подобным случаем за всю историю TopCoder Open (после Варшавского университета, представители которого участвовали во всех шести финалах TopCoder Open).
Андрей Станкевич ведёт большую работу по организации и проведению соревнований по программированию: является председателем Научного комитета Всероссийской олимпиады школьников по информатике, членом жюри полуфинала Восточно-Европейского полуфинала Чемпионата мира по программированию, участвует в проведении различных летних школ по информатике. За заслуги в организации студенческих соревнований по программированию Андрей Станкевич был награждён премией Президента Российской Федерации.

Впервые за время проведения TopCoder Open в финал вышел представитель Украины. Второкурсник Киевского НУ Владислав Симоненко в 2006 году был серебряным медалистом Международной олимпиады школьников по информатике. И вот - очередной успех: победа в полуфинале TopCoder Open-2008 и выход в финал. При этом в полуфинале Владислав опередил Петра Митричева и Эрика Копчиньского, занявших в итоге второе и третье места. В совокупности с четвёртым местом и золотыми медалями команды Львовского НУ в финале командного студенческого Чемпионата Мира по программированию этого года, результат Владислава является свидетельством несомненного успеха в спортивном программировании, которого за последний год добилась Украина.

Соревнования TopCoder Open проводятся с 2003 года. За это время три раза чемпионом стал Томаш Чайка из Польши (в 2003, 2004 и 2008 годах), и по одному разу - Эрик Копчиньский (Польша) в 2005 году, Пётр Митричев (Россия) в 2006 году и Ян Куиперс (Нидерланды) в 2007 году.

Более одного раза в первую тройку на TopCoder Open попадали Томаш Чайка (1 место в 2003, 2004, 2008 и 2 место в 2006 году), Эрик Копчиньский (1 место в 2005 году, 3 место в 2007 и 2008 годах) и Пётр Митричев (1 место в 2006 году, 2 место в 2008 году). Интересно, что именно эти участники составили призовую тройку TopCoder Open этого года.

Во все 6 финалов TopCoder Open выходили польские участники. Российские участники присутствовали в 4 финалах TopCoder Open (все финалы, начиная с 2005 года). У представителей остальных стран не более 3 участий в финалах TCO.