Результати великого чемпіонату з програмування — 2016 на 5 тисяч осіб



З 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 тисяч рублів, переміг Іван Белоногов (Санкт-Петербург, ІТМО). Ось він розповідає про свою стратегії:

На таких змаганнях зазвичай дотримуюся тактики, що спочатку писати хоч щось, щоб воно працювало… — не писати щось складне спочатку, а ось написати якісь базові речі. Спочатку — щоб вона стріляла в сторони, потім написав, щоб вона ходила, потім — щоб слідкувала за батарейками своїми, спочатку відносила свої, потім наступні, і так покроково її поліпшував… Тут було не надто багато часу, щоб якісь хитрі речі робити, все, що я додавав, воно покращувало роботу. Якщо б було більше часу… Залишились речі, які я ще не реалізував, наприклад, робота з мінами. Мені здається, інші учасники теж недалеко просунулися в цьому питанні: хто-то їх кидав, але щоб це ефективно вийшло, я такого не бачив.

Досить добре виступав Максим Ахмедов. Ну зрозуміло, що на попередньому тестуванні завжди показуються бали. Здається, що команда, яка заробила багато балів, вони, напевно, добре грають, але у мене в перших раундах були досить слабкі результати, мені прям здавалося, що якось не щастило.




Посилання



Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.