Rambler's Top100
 
Все новости Новости компаний

Студент Университета ИТМО в пятый раз подряд признан лучшим программистом мира

15 августа 2018

В Торонто прошли международные соревнования по программиро- ванию Google Code Jam. Победителем в пятый раз подряд стал студент Университета ИТМО Геннадий Короткевич. Такого результата не добивался ни один программист мира за всю историю турнира: соперникам удавалось победить максимум дважды.

Google Code Jam проводится компанией Google с 2003 года и считается одним из самых массовых и престижных чемпионатов мира по программированию — ежегодно он собирает свыше 50 тысяч участников.   В этом году, как отмечают организаторы, число зарегистрировавшихся на соревнования программистов превысило 60 тысяч человек из разных стран.

Победу в турнире в пятый раз подряд, упрочив собственный рекорд, одержал воспитанник Университета ИТМО 23-летний Геннадий Короткевич, один из самых успешных спортивных программистов мира. Геннадий — двукратный победитель международного чемпионата мира по программированию ACM ICPC (2013 и 2015 годов), пятикратный победитель Яндекс.Алгоритма, победитель и призер других крупнейших международных контестов.

По итогам соревнований Короткевич набрал 104 балла, опередив ближайших соперников Камила Дебовски (Errichto.rekt) из Польши, поднявшегося на второе место с результатом 96 баллов, и Макото Соэджима (rng..58) из Японии, набравшего 86 баллов. Подробные результаты финала доступны в итоговой таблице соревнований. Приз за первое место составил 15 тысяч долларов.

В Google Code Jam может принять участие любой желающий. После подачи заявки дается возможность участия в квалификационном раунде, который длится около суток и для прохождения которого необходимо набрать некоторое число баллов. Далее проводится серия из трех раундов, каждый из которых проходит в разные дни и длится 2,5 часа (все квалификационные этапы проходят онлайн). По итогам отбора 25 лучших отправляются на финальные соревнования, которые каждый раз проходят в разных странах: например, в 2017 году — в Ирландии (Дублин), а сейчас — в Канаде (Торонто).

В этом году финалисты должны были решить пять алгоритмических задач за четыре часа. Задачи на Google Code Jam состоят из двух частей. Первую можно назвать более легкой для участника, так как для ее решения подходит менее эффективный алгоритм, а перед программистом стоит меньше ограничений. Как только участник отправил решение, он сразу получает ответ, верное ли оно. Если ответ не приходит, программист может перепроверить свое решение и отправить ответ снова. Вторая часть задачи требует более сложных алгоритмов. Кроме того, верно ли она решена, участник узнает только на церемонии награждения. При определении победителей также учитывается общее время, потраченное на решение задач.

По словам Геннадия Короткевича, главной особенностью Google Code Jam этого года стало изменение правил, остававшихся постоянными на протяжении десяти лет. Ранее участники сами запускали свои решения на проверку, а в систему загружали только ответ — теперь же тестирование проводится на компьютерах жюри. Была переписана и полностью обновлена система, на которой проводились соревнования. Кроме того, если раньше участники могли выбирать операционную систему, установленную на их компьютерах — Windows или Linux, то в этот раз единственным вариантом был Linux.

Задачи делились на два уровня сложности: более простые (и поэтому более дешевые в баллах) задачи Jurisdiction Restrictions и Two-Tiling и более сложные Go, Gophers!, Swordmaster и The Cartesian Job, следует из официальной аналитики соревнований. В итоговой таблице результатов гораздо больше частичных решений задачи Go Gophers, чем Two-Tiling. Хотя задача про сусликов и привлекла большее количество финалистов, она же во многом и определила итоговые места: из 20 принятых системой решений только у семи участников они оказались полностью правильными и обеспечили им место в десятке лучших. Тройка лидеров обозначилась в самом конце контеста, когда время было уже на исходе.

«В подобных соревнованиях зачастую важна каждая деталь, а победители определяются на последних минутах. Поскольку окружение оказалось немного непривычным, было важно не тратить много времени на технические вопросы и сконцентрироваться на главном, — комментирует победитель соревнований. — Как видно из таблицы результатов, я оказался одним из немногих участников, решивших задачу Two-Tiling. Условие задачи простое, похоже на головоломку: есть две детали полимино, как в тетрисе, но необязательно из четырёх клеток, и нужно нарисовать фигуру, которую можно замостить одновременно как одной деталью, так и другой. Однако времени на ее решение потребовалось много — я потратил около полутора часов притом, что все соревнование длилось четыре часа. Хотя за задачу давалось не очень много баллов, именно она и принесла мне победу.»

Сейчас Короткевич поступает в аспирантуру Университета ИТМО. Кстати, один из экзаменов победитель Google Code Jam сдал на «отлично» дистанционно прямо из Канады.


Поделиться:
Заметили неточность или опечатку в тексте? Выделите её мышкой и нажмите: Ctrl + Enter. Спасибо!

Оставить свой комментарий:

Для комментирования необходимо авторизоваться!

Комментарии по материалу

Данный материал еще не комментировался.