Чемпионат по программированию. Российские программисты стали чемпионами мира, обойдя Гарвард и MIT. Российские студенты выиграли ЧМ по программированию

С 16 марта по 15 апреля проходил уже третий наш Открытый чемпионат по программированию для любых участников из России и других стран. В прошлый раз участвовало чуть больше 4 тысяч человек, а в этом году в первом туре на платформе Codeforces было уже целых 5 тысяч участников. Причём школьники и студенты шли поначалу наравне с опытными разработчиками и профессиональными киберспорстменами (хотя они тоже часто – студенты).

Кроме основного соревнования по олимпиадной схеме, для 50 финалистов была отдельная задача на написание AI боевого робота (вобота), сражающегося с другими роботами участников.

Правила

Турнир проходил в три раунда, два из которых - удалённые, а последний, финальный, в нашем офисе КРОК на Волочаевской, чтобы исключить «помощь зала». Соответственно, от этапа к этапу росла сложность, и из 5 тысяч человек к финалу пришло 50 лучших участников. Правила всех раундов одинаковые: нужно решить задачу с помощью любого языка и любых средств разработки. Затем зафиксировать и закоммитить решение (после чего менять его нельзя). В этот момент все другие участники видят исходный код коммита и могут «ломать» его, подставляя любые входящие данные. Если хоть один набор данных (из базовых автотестов и предложенных другими участниками) вызывает «провал» решения, оно не засчитывается, а автор входящего набора получает немного дополнительных очков.

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


«Я хотел попасть хоть на какой-то финал, раньше не выходил… Мне понравилось, но было реально тяжело написать работающий код».

На последний тур приехали в основном довольно молодые специалисты (средний возраст около 22 лет). Многие из участников уже проходили стажировки в Google и Microsoft в США либо работают в Yandex, Intel или других крупных ИТ-корпорациях в России.

Задачи финала

Финальные задачи с решениями можно найти . Сам финал и был построен вокруг этих пяти задач. Остальные задачи чемпионата мы тоже выложили в открытый доступ на следующий день после финала. Все остальные задачи с разбором с квалификации и отбора также доступны на Codeforces.

Победители

Победителем основного соревнования в этом году, как и в прошлом, стал Геннадий Короткевич под ником tourist (ИТМО, Санкт-Петербург), забравший 100 тысяч рублей. Железный человек, прямо терминатор, очень известен в тусовке.

Второе место взял Владислав Епифанов, аспирант из Нижнего Новгорода, который ранее засветился победой на Russian Code Cup и занял четвёртое место в финале Google Jam в 2012. Его приз - 70 тысяч рублей.


Кажется, в 2011 году на codeforces объявление было, что КРОК проводит соревнование по программированию. Заинтересовало, решил поучаствовать. Из призовых мест таких серьёзных у меня есть одна победа на Russian code cup, а так в тройку, наверное, больше не попадал ни разу. Я довольно часто прохожу на заключительный этап соревнований и наших всероссийских, и международных, так что какой-то опыт участия у меня есть…
Я работаю уже программистом, в принципе, наверное, этим же и буду продолжать заниматься. Спортпрограммированием занимаюсь почти с первого класса, так что большую часть жизни, можно сказать… У нас в Нижнем Новгороде был такой преподаватель Лелюх Владимир Денисович, и он со многими учениками занимался, среди его учеников было много золотых медалистов международных олимпиад, меня как-то привели на занятие к нему в первом классе, мне понравилось, я решил продолжить ходить.

Третье место и чек на 50 тысяч забрал Алексей Дмитриев (МФТИ).

Конкурс на AI воботов

Этот конкурс шёл отдельно, поскольку задачи задачами, но кроме них ещё нужно показывать реальные боевые вещи.

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

Потом - полтора часа визуализированных боёв.

Приз за это соревнование - 50 тысяч рублей, победил Иван Белоногов (Санкт-Петербург, ИТМО). Вот он рассказывает о своей стратегии:

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

Достаточно хорошо выступал Максим Ахмедов. Ну понятно, что на предварительном тестировании всегда показываются баллы. Кажется, что команда, которая заработала много баллов, они, наверное, хорошо играют, но у меня в первых раундах были достаточно слабые результаты, мне прям казалось, что как-то не везло.

С.-ПЕТЕРБУРГ, 19 мая — РИА Новости. Команда Санкт-Петербургского государственного университета победила на студенческом чемпионате мира по программированию Ассоциации вычислительной техники (ACM-ICPC), сообщается на сайте вуза. Кроме того, команда МФТИ заняла на этом чемпионате 4 место и получила золотые медали, а еще три российских вуза — ИТМО, УРФУ и ННГУ — стали призерами.

"Наши студенты — Игорь Пышкин, Алексей Гордеев, Станислав Ершов — под руководством Андрея Лопатина решили несколько сложных задач за кратчайшее время и показали лучшие результаты", — отмечается в сообщении.

Представители Петербургского университета обошли соперников из Гарвардского университета, Массачусетского технологического института, Шанхайского университета Джао Тонг, Московского университета, а также петербургского университета ИТМО, команда которого заняла второе место.

Студенты СПбГУ уже выигрывали чемпионат мира в 2000, 2001 и 2014 годах. Университет ИТМО (университет информационных технологий, механики и оптики) становился абсолютным чемпионом ACM ICPC в 2004, 2008, 2009, 2012, 2013 и 2015 годах.

МФТИ, в свою очередь завоевал второе в своей истории золото —первые медали программисты из Долгопрудного завоевали в 2012 году, на чемпионате в Варшаве.

"Мы начали активно заниматься олимпиадами по программированию в МФТИ примерно одновременно с запуском учебных программ по Computer Science в 2011 году. С тех пор мы регулярно выходим в финал ACM ICPC. Финал этого чемпионата — это сотня сильнейших команд, сотня сильнейших вузов в области ИТ. Просто попасть в их число — это уже очень престижно для многих", — рассказывает Алексей Малеев, директор Центра развития ИТ-образования в МФТИ.

Российские программисты на чемпионате мира: привычка побеждать На минувшей неделе в Марракеше наши программисты выиграли чемпионат мира, заняв два первых места. Об особенностях этой победы рассказывает побывавший на чемпионате Андрей Анненков.

На протяжении трех последних десятилетий чемпионат ICPC — самое престижное в мире интеллектуальное состязание молодых программистов. Соревнование проводится под эгидой международной Ассоциации вычислительной техники ACM при поддержке компании IBM.

По правилам соревнования в составе каждой команды — три студента. Им предоставляется один компьютер и комплект математических задач. Побеждает команда, решившая наибольшее число задач, а в случае равенства правильных ответов — команда, затратившая меньше времени.

Первое командное соревнование по программированию под эгидой ACM прошло в Техасском университете в 1970 году. Нынешний формат чемпионат принял в 1977 году, когда его первый финал был проведен в рамках ежегодной конференции ACM по информатике.

Всего в олимпиаде участвовало 2736 команд из вузов 102 стран. В финал прошли 128 команд, из них 12 — российские. Студенты СПбГУ одержали победу в чемпионате и смогли обойти команды Шанхайского университета, Гарварда и Массачусетского технологического института. Чемпион 2015 года команда ИТМО заняла седьмое место.

Кроме этого, в первую десятку попали представители еще трех российских вузов: МФТИ, УрФУ и ННГУ.

Чемпионат по программированию ACM ICPC проводится с 1977 года, Россия в нем участвует с 1993 года. За это время Россия десять раз побеждала в соревновании; шесть побед, включая прошлый год, достались студентам Университета ИТМО. Команда СПбГУ побеждала также в 2014 году.

Призеры олимпиады получили приглашения на стажировку в исследовательских офисах компании IBM и в других международных IT-компаниях.

В состав команды СПбГУ вошли Игорь Пышкин, Станислав Ершов и Алексей Гордеев. Тренером команды выступает сотрудник соцсети «ВКонтакте», которая является одним из спонсоров команды, Андрей Лопатин. Корреспондент «Газеты.Ru» пообщался со Станиславом, и он рассказал о своих впечатлениях от чемпионата.

— Как настроение и впечатления от чемпионата?

— Лучше не бывает!

— Как проходил чемпионат?

— Финал чемпионата длится пять часов. Участники получают несколько задач. Например, в этом году было 13 задач. Все они математические: нужно сначала догадаться до идеи решения, придумать алгоритм, а уже затем писать код.

Выигрывает та команда, которая решила больше всех задач, а среди таких — команда с наименьшим штрафным временем. Кроме финала есть еще отборочные соревнования. Сначала примерно в октябре проходят четвертьфиналы, а в декабре — полуфиналы.

— Почему решили принять участие в ACM ICPC?

— Мы все уже много лет занимаемся программированием, поэтому не могли не попробовать свои силы в главном чемпионате в этой области. У нас у всех троих специальность «математика», а программирование мы самостоятельно изучаем, на тренировках например.

— Как проходили подготовки к соревнованию?

— Мы готовились весь год. Писали по три тренировки в неделю. Каждая тренировка по пять часов, как на настоящем чемпионате, чтобы подготовиться к тому, что будет на финале.

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

Несколько раз ездили на сборы. Там тренировки были уже каждый день. Последние сборы закончились за неделю до финала, с тех пор мы приехали в Таиланд и решили отдохнуть перед соревнованием.

— Какие команды вызывали наибольшие опасения?

— В этом году было очень много сильных команд, многие из которых были примерно наравне с нами. На мой взгляд, было около 10 команд, каждая из которых вполне могла выиграть соревнование.

Наиболее сильными мы считали команду из Шанхая и из Варшавы. Шанхайская команда заняла второе место, показав результат совсем немного хуже нашего, всего на семь штрафных минут. У Варшавы плохо решались задачи на старте, поэтому они в итоге выступили не так хорошо, как мы ожидали. Также особую «опасность» представляли ИТМО и Урал.

— Как ты оцениваешь уровень российских программистов на мировой арене?

— Уже более пяти лет чемпионами мира становятся то университет ИТМО, то СПбГУ. В этом году в первой десятке пять российских команд. Так что уровень, на мой взгляд, очень хороший.

— Государство как-то поддерживает вашу команду или вуз?

— Обычно либо разные частные компании нас спонсируют, либо университет.

— Поступали уже предложения от работодателей, зарубежных или отечественных?

— Лично мне еще не поступали. Сокомандники говорят, что пока в основном есть предложения только от WorldQuant. Это зарубежная фирма, но работу они предлагают, скорее всего, в Петербурге.

— Какие планы на будущее?

— Я сейчас только заканчиваю второй курс матмеха СПбГУ. В университете я изучаю математику, а не программирование.

Вполне возможно, что я уеду за рубеж, если там будет возможность работать в интересном проекте.

Но пока я об этом не думаю, потому что для начала нужно окончить университет. Остальные в команде вроде уже решили, что математикой профессионально заниматься не будут, а я еще не определился.

Российские студенты в седьмой раз подряд стали победителями чемпионата мира по программированию ACM ICPC в Пекине. С 2000 года это уже 13-я победа участников из РФ. Первое место заняла команда из Московского государственного университета (МГУ). На втором - Московский физико-технический институт (МФТИ), на третьем - Пекинский университет. Команда победителей получит денежное вознаграждение в $15 тыс. Ранее первые места на этих соревнованиях занимали команды Санкт-Петербургского госуниверситета (СПбГУ), Санкт-Петербургского университета информационных технологий, механики и оптики (ИТМО) и Саратовского государственного университета. Впрочем, в экспертном сообществе не склонны переоценивать успехи российских программистов, напоминая о проблемах в общем уровне подготовки учащихся.


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

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

Команды из Китая и США получили по три медали, по одной - у Японии, Кореи и Литвы.

Кубок мира впервые выиграла команда МГУ Red Panda, решив 9 задач из 12 предложенных. «Наши ребята - лучшие! Гордимся»,- говорится в сообщении пресс-службы МГУ. «Это первая абсолютная победа МГУ в ICPC»,- сообщили “Ъ” в университете. В состав команды (традиционно она состоит из трех человек) входят Михаил Ипатов (студент мехмата), Владислав Макеев и Григорий Резников (факультет вычислительной математики и кибернетики). Тренером команды является завкафедрой информатики специализированного учебно-научного центра (СУНЦ) имени А. Н. Колмогорова МГУ Елена Андреева.

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

Чемпионат по программированию проводится с 1970-х годов, с 2000 года в нем начали побеждать команды российских вузов: первыми тогда стали студенты СПбГУ.

С 2012 года в этой олимпиаде побеждают только российские команды.

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

Кроме команды МГУ среди самых лучших оказались команды МФТИ (второе место) и университетов Пекина и Токио, решившие 8 из 12 задач и удостоенные золотых медалей.

С результатом 7 из 12 соревнования завершили Сеульский национальный университет, университет Нового Южного Уэльса, университет Цинхуа, Шанхайский университет, ИТМО, Массачусетский технологический институт, университет Вильнюса и Уральский федеральный университет.

«Команда физтеха показала высокий результат, они уверенно шли к победе весь год, показали лучший результат за всю историю участия МФТИ в соревнованиях, с чем можно поздравить команду Cryptozoology! Мы гордимся нашими студентами»,- сообщил Алексей Малеев, руководитель команды, директор Центра ИТ-образования МФТИ. «Москва имеет самое большое представительство среди всех городов мира - сразу четыре университета (среди 13 лучших.- “Ъ” ) отстаивают честь страны,- отметил господин Малеев.- Более того, 10 из 13 прошли школу Moscow Workshops ICPC на базе МФТИ». «Это доказывает, что программистское образование у нас в стране - одно из лучших в мире. Поздравляем команду МФТИ и всех российских программистов!» - подчеркнул ректор МФТИ Николай Кудрявцев.

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

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

Победу российских студентов не стоит переоценивать, считает главный научный сотрудник Института проблем информатики РАН Константин Колин. «Выиграли и выиграли, речь идет о единичном успехе: это элита, которую готовят в ведущих вузах, а нужно посмотреть на общий уровень подготовки школьников и студентов»,- сказал эксперт в беседе с “Ъ”. По его словам, социологические опросы, проведенные среди московских школьников в прошлом и нынешнем годах, показали, что «34% школьников считают, что солнце вращается вокруг Земли». «Маразм крепчал, а правительством принята программа ""Цифровая экономика"", которая требует высококвалифицированных специалистов. Для того чтобы их подготовить, необходима революция в образовании, и начинать нужно с педагогов. Мы много об этом говорим, но пока, к сожалению, в Министерстве образования нас не слышат»,- заключил эксперт. В Минобрнауки победу российских студентов на международной олимпиаде “Ъ” оперативно прокомментировать не смогли.

Анна Макеева, Валерия Мишина