В 2016 году за право выйти в финал крупнейшего мирового первенства боролось рекордное количество участников – 40 266 студентов из 2 736 университетов 102 стран. В главном поединке ACM ICPC состязались 128 команд, из них Россию представляли 12: три из Санкт-Петербурга, четыре из Москвы и по одной из Екатеринбурга, Нижнего Новгорода, Саратова, Архангельска и Иннополиса (республика Татарстан). В сборную Университета ИТМО вошли студенты факультета информационных технологий и программирования Антон Ковшаров, Владимир Смыкалов и бронзовый призер чемпионата 2014 года Адам Бардашевич.
Медалями чемпионата награждаются 12 лучших команд, участвовавших в финале. В 2016 году сразу 5 российских университетов вошли в число лучших. Золотые награды получили команды СПбГУ, Шанхайского университета, Гарварда и МФТИ. Серебряными призерами стали Варшавского университета, MIT, Университет ИТМО и УРФУ. «Бронзу» взяли Вроцлавский университет, Нижегородский государственный университет имени Н. И. Лобачевского, Львовский национальный университет и Фуданьский университет. Также призеры получили приглашения на стажировки в исследовательских офисах компании IBM (спонсора соревнования) и в других ведущих международных IT-компаниях. Полная таблица результатов представлена на сайте чемпионата.
В упомянутом составе команда Университета ИТМО готовилась к финалу чемпионата с октября прошлого года, участвуя в региональных отборочных этапах и решая задачи олимпиад прошлых лет. Участникам предлагалось решить 11 задач за 5 часов. Задания чемпионата состоят из легенды (описания некой выдуманной ситуации), примеров тестов и формальных ограничений. Чтобы найти решение, команде требуется «перевести» задачу на язык математики; затем участники разрабатывают алгоритм решения и пишут код. В среднем на тренировки у ребят уходило около пятнадцати часов в неделю.
За подготовку сборной Университета ИТМО отвечал доцент кафедры компьютерных технологий, кандидат технических наук Андрей Станкевич, который тренировал не одну «звездную» команду программистов. В этом году он стал одним из двух тренеров, которым вручили престижную награду ACM ICPC Senior Coach Award за то, что их подопечные в течение 15 лет выходят в финал конкурса.
Тысячи людей со всего мира следили за ходом финала ACM ICPC в режиме реального времени по онлайн-трансляции, за организацию которой в этом году также отвечал Университет ИТМО. «Прямой эфир» с ACM ICPC по накалу эмоций не уступал трансляциям крупнейших спортивных соревнований.
Рабочая группа Университета ИТМО привнесла в трансляцию ряд технических новшеств: вместо стандартных технологий видеопроизводства, которые использовались ранее, были предложены более интересные и современные решения – стриминг на Youtube и twitch (крупнейшей в мире видеоплатформе для геймеров), использование мощных компьютеров и программ VLC/ffmpeg для обработки и монтажа видео.
Зрители могли видеть как планы зала, где проходило соревнование, так и картинку с вебкамер на компьютере каждой команды, скринкаст, показывавший, что происходит на экранах компьютеров, ход тестирования «посылок» от участников (посылкой называется решение задачи, отправленное на проверку) и вердикт жюри. Видео с площадки и интервью в прямом эфире, а также запись разборов заданий, обеспечивала группа из десяти видеооператоров. При этом команда Университета ИТМО отказалась от проводной SDI-техники, которая обычно используется для вещания с мероприятий, в пользу портативной, что сделало трансляцию существенно более дешевой и мобильной: операторы свободно перемещались с камерой по площадке, мгновенно оказываясь там, где происходит самое интересное, и передавали картинку по Wi-Fi.
Важное новшество онлайн-трансляции 2016 года касалось того, видео какой из команд будет показано на «втором экране» в определенный момент времени – на это влияла система автоматического сбора голосов. Система отслеживала хэштеги с названиями команд в Twitter и добавляла команды, набравшие достаточное количество твитов, в очередь на трансляцию.
За ходом соревнования наблюдали пятнадцать аналитиков – они в режиме реального времени отслеживали, над какими заданиями работают команды-лидеры, какие языки программирования используют, давали оценку происходящего и публиковали интересные новости. Также ход соревнования освещали комментаторы, для которых были организованы две студии – англоязычная и русскоязычная.
Подробнее о технических особенностях организации онлайн-трансляции финала ACM ICPC можно узнать в блоге Университета ИТМО на Хабрахабре.
Запись трансляции доступна на сайте ICPCLive, а также на каналах Youtube и twitch (английская трансляция здесь, русская – здесь, второй экран – здесь).
Следующий финал чемпионата пройдет в Рапид-Сити (штат Южная Дакота, США).