Самые умные: как сложилась карьера победителей мировых IT-чемпионатов. Российские студенты выиграли чемпионат мира по программированию ICPC Международный чемпионат по программированию

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

И кто наши герои?

Команда победителей состояла из трёх студентов кафедры компьютерных технологий , Владимира Смыкалова, Ивана Белоногова и Ильи Збаня. Главным тренером команды выступил доцент кафедры компьютерных технологий, кандидат технических наук Андрей Станкевич , который в прошлом году получил награду ACM ICPC Senior Coach Award за то, что в течение 15 лет его подопечные проходили в финал конкурса.

В число золотых призёров ACM-ICPC 2017 вошли СПбГУ (прошлогодний победитель), Варшавский и Сеульский университеты. Серебряные медали ACM-ICPC 2017 получили команды Фуданьского университета, Пекинского университета, Университета Синьхуа и МФТИ. «Бронзу» взяли представители Токийского университета, шведского Королевского технологического института, Уральского федерального университета и Корейского института передовых технологий.

Всего в этом году в финале ACM-ICPC 2017 участвовали 133 команды из всех регионов мира. Само состязание проходило уже в 41 раз.

МОСКВА, 19 апреля. /ТАСС/. Российские студенты завоевали кубок мира и четыре медали из 13 на престижном мировом чемпионате по программированию ICPC, финал которого прошел в четверг в Пекине. Это команды студентов из четырех российских вузов - МГУ им. Ломоносова, МФТИ, ИТМО и Уральского федерального университета, сообщили в пресс-службе МФТИ.

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

Чемпионат мира по программированию

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

В этом году в чемпионате ICPC, включая региональные отборочные турниры, соревновались порядка 50 тыс. лучших студентов-программистов из около 3 тыс. университетов, представляющих 111 стран.

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

Команды из РФ участвуют в ICPC с 1993 года.

В ICPC соревнуются команды из трех студентов не старше 25 лет. В распоряжении команды - всего один компьютер, поэтому, помимо логики и умения работать в жестких временных рамках, конкурсанты должны проявить навыки взаимодействия в команде и грамотно распределить роли. Побеждает команда, которая правильно решила наибольшее количество задач и при этом показала наилучшее время.

Все призеры ICPC получают денежную премию: команда чемпионов - $15 тыс.; команды, завоевавшие золотые медали - по $7,5 тыс.; серебряные призеры - по $6 тыс., а команды, взявшие бронзу, - по $3 тыс.

Сергей Тушин, заместитель главы администрации Екатеринбурга по организации значимых общероссийских и международных мероприятий:

– Проведение чемпионата мира по программированию не стало для Екатеринбурга стрессом, так как вся инфраструктура была приспособлена к приезду такого количества гостей. Проведение подобного мероприятия – это показатель престижа вуза и признание уровня уральской науки. А также возможность зафиксировать уровень развития IT-сферы в нашем регионе и дать ему новый импульс движения вперед.

Маруан Наггар (Marwan Naggar ), участник команды №10, студент Каирского университета (Cairo University ), Египет (участвует первый раз):

– Я участвую впервые в таком масштабном и грандиозном мировом соревновании по программированию, поэтому осознавать себя его частью – фантастика. То, что ты видишь этих невероятных ребят со всех концов света в одном месте, само по себе воодушевляет на борьбу. Организация мероприятия замечательная. Нас хорошо встретили, помогли устроиться, везде сопровождают. Надо отметить, что нашему тренеру нужно особое внимание, так как он – лицо с ограниченными возможностями, и мы очень рады, что не возникло никаких проблем с этим. У нас еще не было шанса посмотреть Екатеринбург как следует из-за четкого расписания, но на первый взгляд он показался мне очень красивым, понравилась здешняя архитектура.

Игорь Левитин, помощник Президента РФ:

– Для нас является важным проведение в городе подобного мероприятия. Я пока не знаю, кто победил, но уверен, что победили в честной борьбе и победили лучшие.

В России придается очень большое значение образовательным программам и созданию университетов. IT-программы в наших университетах являются залогом качественного инженерного образования в РФ. Сегодня инженерное образование является одной из важнейших задач в образовательной системе. Никакие технические новые прорывные решения немыслимы без IT-технологий.

Евгений Куйвашев, губернатор Свердловской области:

– Данное мероприятие позволяет нам моделировать нашу жизнь немножко вперед. И, во многом, участники сегодняшних соревнований через некоторое время будут определять нашу жизнь. Потому что IT-технологии продвигают нашу жизнь вперед и проникли в промышленность и вообще во все отрасли, которые нас окружают. IT-технологии делают расстояние от идеи до ее реализации очень коротким и быстрым. Программисты! Вы будете двигать нашу жизнь, наш быстрый и изменчивый мир вперед.

Билл Паучер, исполнительный директор чемпионатов ACM ICPC , профессор Университета Бэйлора:

– Чемпионат ACM ICPC – это прекрасная возможность для студентов со всего мира собраться вместе и обменяться ценным опытом. Я рад наблюдать за тем, как молодые люди используют знания, полученные в процессе соревнования, для дальнейшего движения по выбранному академическому и карьерному пути в качестве членов Ассоциации вычислительной техники (ACM). Чемпионат мира по программированию проводится для того, чтобы выращивать все более и более совершенные поколения программистов, которые смогут решать технические задачи на более высоком уровне. Победители ICPC прошлых лет из России – это разработчики «ВКонтакте», «Яндекс», Mail.ru и «СКБ Контур». Чемпионат 2014 года стал самым массовым за всю историю ICPC: 122 команды со всего света, и они уже оказались на вершине. Они – звезды вселенной под названием «ICPC-2014»! Именно за ними будущее, за ними - XXII-й век!

Виктор Кокшаров, ректор Уральского федерального университета:

– Я надеюсь, что пребывание участников чемпионата в Екатеринбурге было незабываемым: для этого мы сделали очень многое, почти невероятное. Мы даже погоду поменяли: еще на прошлой неделе был шторм, ливень и грозы, а сегодня - солнечно, вы улыбаетесь, и все хорошо. Вот до чего дошла наука! С ней в Уральском федеральном все в порядке: информационные технологии, компьютерные науки, математика - многие студенты нашего университета специализируются именно на этом, как и участники команд, которые собрались здесь сегодня. Я желаю всем вам удачи, крепкого здоровья и незабываемых впечатлений от Екатеринбурга и этих соревнований!

Алан Азагури, руководитель направления IBM Software Group Technical Strategy, член IBM Academy of Technology и руководитель спонсорской программы ACM ICPC:

– Как одна из ведущих международных технологических компаний IBM понимает, насколько важно помогать студентам и мотивировать их на пути знакомства с новейшими достижениями технологического прогресса. Каждый год ACM ICPC объединяет лучших студентов-программистов в мире и дает им возможность решать задачи из реального мира. Мы полагаем, что эти студенты – будущие лидеры нашей индустрии, и хотим сделать вклад в их развитие и подготовку к будущей работе. Надеемся, что победители помогут нам построить по-настоящему разумную планету.

Александр Куприн, участник Чемпионата мира по программированию A CM ICPC 2014, Высшая школа экономики, Москва:
– По правилам Чемпионата мира по программированию в соревнованиях можно участвовать всего два раза. Вот это мой второй раз. Первый был в 2011 году в Орландо. Тогда для нас главной задачей было - хотя бы попасть в финал. Мы считаем, что это уже было достижением. Я выступал от Орловского государственного технического университета. В первый раз впечатления всегда другие. Там были интересные мероприятия, нас возили в «Sea World» - это большой парк аттракционов. Вечером после соревнований мы поехали на киностудию «Universal». Там как раз закончился рабочий день, и специально для нас работники остались, чтобы провести экскурсию. Показали деревню Хогсмид из Гарри Потерра и другие вещи, связанные с «Фантастической четвёркой», «Человеком-пауком» и так далее. А здесь пока тоже неплохо. Вот граффити рисовали, мастер-классы были интересные. Параллельная программа, которую проводят организаторы, по-своему интересна и необычна.

Дмитрий Бугров, директор ACM ICPC 2014 в Екатеринбурге, первый проректор УрФУ:

– Сегодня отрасль «Информационные технологии» находится на передовой и очень быстро развивается. Почему именно айтишники идут во главе прогресса? Потому что через какое-то количество лет именно они будут управлять миром, может быть, незримо через мобильные приложения, компьютерные программы и многое другое, что делает нашу жизнь непохожей на жизнь наших предков, а жизнь наших детей сделает непохожей на нашу с вами жизнь. Самое главное, что эта отрасль постоянно нуждается в подпитке, она не терпит застоя, ей постоянно нужны новые мозги. Только это и обеспечивает ее развитие. Мир развивается потому, что развиваются умы.

Екатерина Корх, капитан команды КВН «Арррива», студентка Уральского государственного лесотехнического университета:

– Нашу команду пригласили на Кубок КВН Студенческой программы активностей в рамках ACM ICPC 2014 выпускники УрФУ - команда КВН «Голоса». Мы решили, что это замечательное летнее мероприятие, в котором стоит поучаствовать. Здорово, что в рамках Чемпионата мира по программированию походит такое яркое мероприятие, как КВН.

Подготовка проходит замечательно, нам очень нравятся редакторы и организаторы - Максим Басавин и Екатерина Власюк. Хорошие ребята с конструктивной критикой, с положительными эмоциями, с которыми приятно работать. Главное для нас - чтобы публика по достоинству оценила наше выступление. Ведь в нашей программе присутствует часть с уклоном на Чемпионат. Многое для нас ново, в том числе сцена: огромная и, насколько понимаю, без каких-либо кулис. Но КВНщики - это такие люди, которые готовы адаптироваться к любым условиям. Мы даже выступали как-то на улице под дождём, так что это не страшно.

В эру информационных технологий, компьютеров, iPhone, роботов и всего того, что умнее меня - такое мероприятие очень актуально. Побывать внутри всего этого, узнать какие-то секреты на мастер-классах и просто отлично провести время, тем более бесплатно - это вообще круто!

Тис Кинкхорст, член оргкомитета ACM ICPC 2014:

– Я помогаю судьям в организации, и это уже мой третий чемпионат мира. Что меня удивило в Екатеринбурге, так это количество волонтеров, которые всегда готовы помочь. Когда мы прилетели в аэропорт в 5 утра и нас встретили трое волонтеров, спросив: «Можем ли мы помочь?», – это было действительно круто! Я думаю, волонтеры – самый большой плюс в организации чемпионата этого года.

Влад Боровков, член оргкомитета «Территории уникальных развлечений»:

– Наш главный девиз – чтобы было нескучно. Мы хотели показать гостям, что программирование и вообще кибернетика – это интересно и зрелищно. Приятно, что в нас поверили и доверили проведение мероприятия для всего города.

Ольга Николенко, волонтер ACM ICPC 2014, студентка УрФУ:

– У волонтеров была очень теплая, семейная атмосфера. Если возникала какая-то проблемная ситуация и нужна была помощь, я была уверена, что мне ее предоставят другие ребята. Естественно, иногда возникали какие-то казусы, но работа именно самих волонтеров была безупречной, большинство выкладывалось на полную катушку. Ведь эти люди – энтузиасты, а когда человек заинтересован в том, что он делает, это всегда получается отлично. В обмен мы получили столько эмоций, что их хватит на все лето! Волонтеры находились в отелях, в аэропорту, и были «бадди» – сопровождающие. Но больше всего времени мы проводили со своими подопечными командами. Такие мероприятия очень полезны для города и университета, но особенно важны для того, чтобы люди из разных стран учились находить общий язык.

Сегодня, в 18 часов по московскому времени, в американском Rapid City начнется финал самого престижного мирового соревнования для программистов – ACM ICPC. Приглашаем всех желающих увидеть это событие в прямом эфире (прямая трансляция начнется уже в 17 часов по Москве) и поддержать команду Университета ИТМО – одного из фаворитов чемпионата. О том, как команды со всего мира готовились к финалу, а также о прогнозах на победу расскажем ниже.

Немного фактов

  • Спортивное программирование ежегодно собирает больше участников, чем Олимпийские игры – в этом году в соревнованиях ACM ICPC принимают участие 46 381 человек из 103 стран, в то время как в летней Олимпиаде в Рио на всех этапах участвовали 11 544 спортсменов (в 4 раза меньше).
  • Интерес к соревнованиям растет с каждым годом. Как отмечает Владимир Парфенов, директор регионального полуфинала чемпионата ACM ICPC в России и странах Северо-Восточной Европы, декан факультета информационных технологий и программирования Университета ИТМО, в 2004 году в мировом первенстве ACM ICPC принимало участие 8 000 программистов (включая региональные отборочные этапы), в 2016 – уже свыше 40 000.
  • За российскими вузами уже давно закрепилось положение лидеров чемпионата – наши команды 11 раз становились абсолютными чемпионами ACM ICPC. Из них 6 раз победу в чемпионате одерживали команды Университета ИТМО – и это мировой рекорд (в 2017 году Университет ИТМО борется за звание семикратного чемпиона мира).
  • Число участников из России остается высоким уже много лет: в 2004 году во всех этапах чемпионата приняли участие 2 100 программистов из России, к 2016 их число увеличилось уже до 3 400.
  • Формат чемпионата ACM ICPC называют не только одним из наиболее удачных, но и одним из самых сложных: каждая команда использует только один компьютер и в сжатые сроки должна решить как можно больше задач. Из-за этого на чемпионате предъявляются повышенные требования не только к креативности, знанию алгоритмов и «матчасти», но и к умению распределять роли и работать в команде.
Я бы сказал, что преуспеть в соревнованиях до определённого уровня, имея только знания из первой категории [знание математики, алгоритмов, языка программирования], можно. Тем не менее, знания из второй категории [понимание правильной тактики, навыки грамотного распределения ресурсов] сильно упрощают жизнь и работают как катализатор. Как и в любом спорте: есть физические навыки, а есть знание техники, психология, и так далее. Преуспеть только за счёт первого можно, но второе будет работать катализатором

– Павел Кротков, выпускник факультета информационных технологий и программирования Университета ИТМО, участник и организатор множества контестов по программированию в России и за рубежом, включая ACM ICPC NEERC

  • Кстати, начиная с октября прошлого года Павел с коллегами – Максимом Буздаловым, чемпионом ACM ICPC 2009 года и Дарьей Яковлевой, в 2016 году вошедшей в десятку на международном соревновании по программированию Google Code Jam for Women – ведут курс «Как побеждать в соревнованиях по программированию: секреты чемпионов », который Университет ИТМО запустил на платформе edX. О том, какие советы чемпионы дают новичкам в спортивном программировании, мы писали здесь: и .
  • За онлайн-трансляцию чемпионата также отвечает команда Университета ИТМО (конечно же, не спортсменов-программистов, а специалистов по видеотрансляции). В то время, как участники чемпионата борются за чемпионский титул, видеогруппа, аналитики, директор, режиссер, дизайнер, программисты и видеоредакторы стремятся превратить финал ACM ICPC в мероприятие, за которым будет интересно наблюдать людям со всего мира. Кстати, в этом году специально для российских зрителей мы организуем вещание на русском языке. О том, как работает команда, какие аппаратные и программные решения используются при трансляции, читайте в этом материале.

Подготовка участников

Прежде, чем принять участие в финале, команды проходят подготовку на разнообразных предварительных сборах. Один из таких тренировочных этапов ежегодно проходит на базе МФТИ (это Moscow Workshops ACM ICPC).

Формат воркшопов достаточно жесткий: за 11 дней непрерывных тренировок студенты-участники решают не менее 100 олимпиадных задач. Также в рамках тренировочной программы предусмотрены консультации с преподавателями сборов и изучение материалов лекций.

Будущие победители таким обучением не пренебрегают: в 2016 году 8 из 13 команд-победительниц ACM ICPC участвовали в тренировочных сборах. А в нынешнем в Moscow Workshops ACM ICPC приняли участие 170 студентов и тренеров, представлявших 19 стран и 44 университета. Возможность дистанционного участия позволила пройти обучение у российских специалистов командам из США, Латвии, Румынии, Китая и Индии.

Прогнозы: кто победит

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

Из российских команд очень хорошо себя показали команды Университета ИТМО, СПбГУ и МФТИ. Из неожиданных открытий последних сборов – команда из Австралии (Университет Нового Южного Уэльса) и более сильная, чем раньше, команда KTH из Стокгольма. Также можно отметить сильные команды из MIT и нескольких других китайских университетов: Шанхайского Университета Транспорта, Фуданского университета из Пекина, Пекинского университета».
– Андрей Станкевич


Владимир Парфенов отмечает, что в этом году результаты российских команд, прошедших в финал, оказались ожидаемыми: лидеры выступили стабильно хорошо, но состав вузов-финалистов остался практически неизменным по сравнению с прошлым годом:
Среди российских финалистов – участники старые ([они] и раньше доходили до финального этапа, но не во все годы), поскольку подготовить команду, выходящую в финал весьма трудно.

Если говорить о регионе [Северо-Восточная Европа], то в этом сезоне СПбГУ, Университет ИТМО и МФТИ – это три наиболее сильные российские команды, поскольку у МГУ, например, сезон не сложился. Из других стран [региона] с нами могут соперничать белорусские команды.
– Владимир Парфенов

В 2017 году в финале самого престижного соревнования среди программистов участвовали 133 команды из всех регионов мира, состязания проходили в 41-й раз. В итоге сборная ИТМО в седьмой раз стала победителем ACM ICPC , что еще не удавалось ни одному вузу в мире, говорится в сообщении пресс-службы вуза.

Победителями стали студенты кафедры компьютерных технологий Владимир Смыкалов, Иван Белоногов и Илья Збань. Главным тренером команды выступил доцент кафедры компьютерных технологий, кандидат технических наук Андрей Станкевич. В 2016 году он получил престижную награду ACM ICPC Senior Coach Award за то, что в течение 15 лет его подопечные проходили в финал конкурса.

Другие команды, вошедшие в четверку лидеров, тоже решили 10 задач, но потратили на это чуть больше времени. Так, на втором месте оказалась команда Варшавского университета. На третьей позиции - программисты из Сеульского национального университета. С четвертым результатом финишировала команда СПбГУ, чемпион 2016 года.

«Соревнование прошло удивительно гладко. В некоторых задачах мы интуитивно положились на факты, которые не могли доказать полностью, и чутье нас не подвело. Нам удалось сдать 10 задач фактически за четыре часа, и это дало хороший запас уверенности. Но только в самом конце, когда мы сдали десятую задачу, я подумал: «О"кей, видимо, получится взять золото!» - рассказал Иван Белоногов.

Призерами стали также другие российские команды: команда МФТИ и Уральский федеральный университет. Всего в 2017 году Россию представляли 13 команд из Москвы, Санкт-Петербурга, Саратова, Перми, Петрозаводска, Новосибирска, Самары, Томска и Екатеринбурга. Команды из России участвуют в чемпионате с 1993 года, а с 2000 года побеждали в соревновании уже 12 раз, включая этот год.

Традиционно контест проходил в течение пяти часов. За это время участники должны решить практико-ориентированные задачи. Особенность соревнований в том, что команды из трех человек сидят перед одним компьютером. Поэтому помимо логики и умения работать под давлением они должны проявить навыки командной игры и правильного распределения ролей. Чтобы решить некоторые задачи, достаточно лишь аккуратности и внимательности. Для других заданий требуется углубленное знание различных алгоритмов. Результатом работы команды чаще всего становится некое программное обеспечение, которое соответствует поставленным условиям. Задачи проверяются автоматически по тестам, которые заранее составляются жюри, проверка решений идет в реальном времени. Учитывается полнота и скорость выполнения задания, а также количество попыток, которое сделала команда при решении той или иной задачи. Не всегда команды успевают справиться со всеми. Такие жесткие условия соответствуют реальной жизни, ведь клиент может просто отказаться от услуг программиста, если он впустую тратит время и ресурсы.

Чтобы попасть в финал ACM ICPC, нужно было сначала пройти местный отбор в собственном университете. Обычно в этих мероприятиях участвуют более 300 тысяч человек. Затем проходят региональные контесты, в которых определяются лидеры, достойные финала. Чемпионы ICPC получают кубок чемпионата мира и денежную премию, которая в этом году равняется 15 000 долларов США.

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

Ранее российские школьники две золотые, одну серебряную и одну бронзовую медаль на Всемирной олимпиаде роботов.

Евгения Щербина