Яндекс.Метрика

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

В финале крупнейшего мирового первенства выступили 140 команд из 51 страны, в том числе 11 российских команд.

Российские участники завоевали кубок мира и 4 медали из 13 – больше, чем остальные страны-участники: команды из Китая и США получили по три медали, по одной – у Японии, Кореи и Литвы. Первое место и кубок чемпионов завоевал МГУ. «Золото», помимо МГУ, получили МФТИ, Пекинский университет и Токийский университет. «Серебро» досталось Сеульскому университету, Университету Южного Уэльса, Университету Синьхуа и Шанхайскому университету Джао-тонг. «Бронзу» завоевали Университет ИТМО, Университет Центральной Флориды, Массачусетский университет технологий, Вильнюсский университет и УрФУ. Так как 13 команд решило по 7 задач, в этот раз судьи решили присудить не 12, а 13 медалей.

«В этом году очень много сильных команд, помимо традиционных вузов Санкт-Петербурга, очень сильные ребята из Польши и Кореи. Контест проходит на высоком уровне в Университете Пекина, принимающая сторона вложила много труда, организация на высоком уровне. Высокие результаты на старте показали два ведущих московских вуза — МГУ и МФТИ. Отмечу, что Москва имеет самое большое представительство среди всех городов мира - сразу 4 университета отстаивают честь нашего региона. Более того, 10 из 13-ти медалистов прошли школу Moscow Workshops ICPC на базе МФТИ. Команда Физтеха показала высокий результат, они уверенно шли к победе весь год, в полуфинале NEERC взяли абсолютное чемпионство, и сейчас на мировом уровне взяли золото. Они показали лучший результат за всю историю участия МФТИ в соревнованиях, с чем можно поздравить команду Cryptozoology! Мы гордимся нашими студентами», - сообщил Алексей Малеев, руководитель команды Cryptozoology, директор Центра ИТ-образования МФТИ.

Всемирная Олимпиада по спортивному программированию по масштабу в 4 раза превосходит традиционные Олимпийские игры: в этом году в чемпионате ICPC (включая региональные отборочные турниры) соревновались порядка 50 000 лучших студентов-программистов из около 3100 университетов, представляющих 111 стран. Для сравнения: в Летних Играх в Рио на всех этапах участвовали 11 544 спортсмена.

«В этом году наиболее сильные команды от нашей страны выставили МФТИ, МГУ и ИТМО. Именно они заняли первые строчки таблицы результатов в отборочных соревнованиях. Однако у них были сильные конкуренты из Китая и Кореи – это команды Пекинского университета, Сеульского национального университета и Университета Синьхуа.. Как обычно, соревнования были напряженными и предсказать, кто именно станет чемпионом мира в этом году, было очень сложно», – комментирует Роман Елизаров, председатель жюри регионального полуфинала ICPC в Северной Евразии, тьютор Университета ИТМО.

Российские программисты лидируют на мировом первенстве уже много лет. С 2000 года команды из нашей страны побеждают в ICPC уже в тринадцатый раз. Шесть лет, с 2012 по 2017 год, кубок мира передавали друг другу две петербургские команды – СПбГУ и Университет ИТМО, обладающий мировым рекордом по количеству чемпионских титулов: на счету у него семь кубков. У ближайших зарубежных соперников, американского Стэнфорда и китайского Университета Джао Тонг – всего по три победы. Команды из РФ участвуют в ICPC с 1993 года.

«Программирование становится настоящим интеллектуальным спортом будущего, не менее интересным, чем, например, шахматы, и в данной «дисциплине» ребятам из России нет равных», – отмечает вице-президент Российского союза ректоров, ректор Университета ИТМО Владимир Васильев.

В ICPC соревнуются команды из трех студентов не старше 25 лет. К участию в чемпионате не допускаются студенты, дважды участвовавшие в мировом финале. В распоряжении команды – всего один компьютер, поэтому, помимо логики и умения работать в жестких временных рамках, конкурсанты должны проявить навыки взаимодействия в команде и грамотно распределить роли. Побеждает команда, которая правильно решила наибольшее количество задач и при этом показала наилучшее время; также учитывается количество сделанных попыток, или «посылок» (так называют решение задачи, отправленное на проверку на тестирующий сервер). Каждое задание включает описание некой ситуации (легенду), примеры тестов и формальные ограничения. Участникам нужно «перевести» условия на язык математики, затем разработать алгоритм решения и написать код на одном из языков программирования, одобренных к использованию на чемпионате – Java, C, C ++, Python и Kotlin (последний был введен в качестве официального языка соревнований в этом году). Отправленное судьям решение проходит ряд проверок. Задача считается решенной, если программа выдала правильные ответы во всех тестах. Если программа выдала неправильный ответ или не уложилась в ограничения по времени или памяти, то сообщение об этом отправляется команде, после чего участники могут послать исправленную версию. За неудачные попытки командам начисляется штрафное время, которое учитывается при расчете итогового результата. За час до окончания соревнований турнирная таблица замораживается: команды видят только результаты собственных «посылок» и то, какие задачи попытались решить соперники.

Стоит отметить, что в этом году в число языков программирования, официально разрешенных к использованию командами на чемпионате ICPC, был включен язык Kotlin, разработанный российскими программистами из компании JetBrains. «Это также знаковое событие для отечественной IT-индустрии: в мае 2017 года Google объявил, что Kotlin, наряду c Java, станет основным языком для создания мобильных приложений под Android. Это, пожалуй, крупнейший прорыв российских программистов на глобальный рынок за последние 25 лет – смартфоны и планшеты, работающие на Android, составляют более половины мирового рынка мобильных устройств, и эта доля растет! По прогнозам экспертов, в течение 5 лет Котлин войдет в тройку самых популярных языков программирования в мире», – поясняет Роман Елизаров, являющийся также одним из руководителей проекта Kotlin в компании JetBrains.

Все призеры ICPC получают солидную денежную премию: команда чемпионов – 15 000 долларов США; команды, завоевавшие золотые медали – по 7500 долларов; серебряные призеры – по 6000 долларов, а команды, взявшие бронзу, – по 3000.

От России в финале ICPC выступили 11 команд, представляющие университеты из 6 городов: Московский физико-технический университет, Московский государственный университет, Университет ИТМО (Санкт-Петербург), Санкт-Петербургский государственный университет, Высшая школа экономики, Московский авиационный институт, Новосибирский государственный университет, Пермский государственный университет, Саратовский государственный университет, Академический университет (Санкт-Петербург), Уральский федеральный университет (Екатеринбург).

International Collegiate Programming Contest – старейший, крупнейший и самый престижный в мире чемпионат по спортивному программированию. Соревнование проводится ежегодно c 1977 года под эгидой Ассоциации вычислительной техники (ACM). В финал чемпионата попадают команды, прошедшие многоступенчатый отбор на региональных этапах.