![](https://habrastorage.org/files/77f/d52/cee/77fd52ceea174d2da14d60e436ce3517.jpeg)
С 16 марта по 15 апреля проходил уже третий наш Открытый чемпионат по программированию для любых участников из России и других стран. В прошлый раз участвовало чуть больше 4 тысяч человек, а в этом году в первом туре на платформе Codeforces было уже целых 5 тысяч участников. Причём школьники и студенты шли поначалу наравне с опытными разработчиками и профессиональными киберспорстменами (хотя они тоже часто – студенты).
![](https://habrastorage.org/files/19b/bcd/50e/19bbcd50ef5e42468311d689b5f54d2b.jpeg)
Кроме основного соревнования по олимпиадной схеме, для 50 финалистов была отдельная задача на написание AI боевого робота (вобота), сражающегося с другими роботами участников.
Правила
Турнир проходил в три раунда, два из которых — удалённые, а последний, финальный, в нашем офисе КРОК на Волочаевской, чтобы исключить «помощь зала». Соответственно, от этапа к этапу росла сложность, и из 5 тысяч человек к финалу пришло 50 лучших участников. Правила всех раундов одинаковые: нужно решить задачу с помощью любого языка и любых средств разработки. Затем зафиксировать и закоммитить решение (после чего менять его нельзя). В этот момент все другие участники видят исходный код коммита и могут «ломать» его, подставляя любые входящие данные. Если хоть один набор данных (из базовых автотестов и предложенных другими участниками) вызывает «провал» решения, оно не засчитывается, а автор входящего набора получает немного дополнительных очков.
![](https://habrastorage.org/files/45a/e41/936/45ae4193616b441fb6e96e08db576692.jpeg)
Мы оплачивали дорогу до Москвы всем финалистам. Если в прошлом году ярко зажигал один японец, профессионально участвующий в турнирах, то на этот раз на финал приехал Якуб Сафин из Чехии.
![](https://habrastorage.org/files/aff/95d/bf4/aff95dbf45b74449a6172ae9c21cc84e.jpeg)
«Я хотел попасть хоть на какой-то финал, раньше не выходил… Мне понравилось, но было реально тяжело написать работающий код».
![](https://habrastorage.org/files/ba8/96d/7b1/ba896d7b127e482a8bbfc8d2b9ad33c6.jpeg)
На последний тур приехали в основном довольно молодые специалисты (средний возраст около 22 лет). Многие из участников уже проходили стажировки в Google и Microsoft в США либо работают в Yandex, Intel или других крупных ИТ-корпорациях в России.
Задачи финала
Финальные задачи с решениями можно найти здесь. Сам финал и был построен вокруг этих пяти задач. Остальные задачи чемпионата мы тоже выложили в открытый доступ на следующий день после финала. Все остальные задачи с разбором с квалификации и отбора также доступны на Codeforces.
![](https://habrastorage.org/files/e8a/ac4/298/e8aac429842548b5adb765a21a205fe2.jpeg)
Победители
Победителем основного соревнования в этом году, как и в прошлом, стал Геннадий Короткевич под ником tourist (ИТМО, Санкт-Петербург), забравший 100 тысяч рублей. Железный человек, прямо терминатор, очень известен в тусовке.
![](https://habrastorage.org/files/933/331/90e/93333190e3a2491cbaf18c2a1438cbd5.jpeg)
Второе место взял Владислав Епифанов, аспирант из Нижнего Новгорода, который ранее засветился победой на Russian Code Cup и занял четвёртое место в финале Google Jam в 2012. Его приз — 70 тысяч рублей.
![](https://habrastorage.org/files/42a/ff8/e35/42aff8e350044b7cbf3f6e9ddf660e90.jpeg)
Кажется, в 2011 году на codeforces объявление было, что КРОК проводит соревнование по программированию. Заинтересовало, решил поучаствовать. Из призовых мест таких серьёзных у меня есть одна победа на Russian code cup, а так в тройку, наверное, больше не попадал ни разу. Я довольно часто прохожу на заключительный этап соревнований и наших всероссийских, и международных, так что какой-то опыт участия у меня есть…
Я работаю уже программистом, в принципе, наверное, этим же и буду продолжать заниматься. Спортпрограммированием занимаюсь почти с первого класса, так что большую часть жизни, можно сказать… У нас в Нижнем Новгороде был такой преподаватель Лелюх Владимир Денисович, и он со многими учениками занимался, среди его учеников было много золотых медалистов международных олимпиад, меня как-то привели на занятие к нему в первом классе, мне понравилось, я решил продолжить ходить.
Третье место и чек на 50 тысяч забрал Алексей Дмитриев (МФТИ).
![](https://habrastorage.org/files/a8f/b7d/5b3/a8fb7d5b35e14aa78b9fe96b08978ff7.jpeg)
Конкурс на AI воботов
Этот конкурс шёл отдельно, поскольку задачи задачами, но кроме них ещё нужно показывать реальные боевые вещи.
В этом году были классические соревнования роботов, но с батареями и минами. Каждый из участников выбирал свою стратегию боя, около 4 часов участники учили своих роботов носить батарейки, ставить мины и ловушки, стрелять и двигаться по карте.
Потом — полтора часа визуализированных боёв.
![](https://habrastorage.org/files/db1/299/25c/db129925c2ef4426a0b5aaaa04906598.jpeg)
Приз за это соревнование — 50 тысяч рублей, победил Иван Белоногов (Санкт-Петербург, ИТМО). Вот он рассказывает о своей стратегии:
На таких соревнованиях обычно придерживаюсь тактики, что сначала писать хоть что-то, чтобы оно работало… — не писать что-то сложное сначала, а вот написать какие-то базовые вещи. Сначала — чтобы она стреляла в стороны, потом написал, чтобы она ходила, потом — чтобы следила за батарейками своими, сначала относила свои, потом следующие, и так пошагово её улучшал… Тут было не особо много времени, чтобы какие-то хитрые вещи делать, всё, что я добавлял, оно улучшало работу. Если б было больше времени… Остались вещи, которые я ещё не реализовал, например, работа с минами. Мне кажется, остальные участники тоже недалеко продвинулись в этом вопросе: кто-то их бросал, но чтобы это эффективно получилось, я такого не видел.
Достаточно хорошо выступал Максим Ахмедов. Ну понятно, что на предварительном тестировании всегда показываются баллы. Кажется, что команда, которая заработала много баллов, они, наверное, хорошо играют, но у меня в первых раундах были достаточно слабые результаты, мне прям казалось, что как-то не везло.
![](https://habrastorage.org/files/353/10c/5fd/35310c5fd9bc48b9a3ed9864ee1aed0b.jpeg)
Ссылки
- Вот спецификация и конкурсное задание (PDF) на конкурс воботов.
- Задачи чемпионата
- Ещё раз разбор финальных задач
- А отчёт с прошлого российского чемпионата по программированию лежит здесь.
SveChu
Выше ссылка на PDF с запросом доступа. Простите, не смогу ответить всем быстро, вот открытая: открытый pdf.