pkhaustov's blog

By pkhaustov, 11 years ago, In Russian

Вот и пролетела вереница новогодних праздников, большинство из нас неохотно возвращаются к трудовым будням. Кроме того, конец новогодних праздников совмещен и с началом последнего этапа голосования "Итоги 2012 года" на сайте проекта SnarkNews. Собственно, об этом событии мне бы и хотелось поговорить в этом посте.

Казалось бы, обычное голосование, которое вполне может быть результатом субъективности и чувства юмора участников олимпиадного движения. Но если взглянуть на это голосование под хотя бы сколько-нибудь отличным углом, то в нем можно увидеть неплохую попытку собрать в одном месте все самые значимые события и результаты прошедшего года, выделить людей, которые внесли наиболее значимый вклад в олимпиадное движение. Хотелось бы попросить не относиться пренебрежительно к такого рода голосованию. Если нет желания голосовать объективно — лучше просто не голосуйте.

Год выдался крайне богатым на события: ИТМО стал четырехкратным чемпионом Мира, Евгений Капун стал третьим в истории двукратным абсолютным чемпионом Мира, Роман Андреев стал победителем Facebook Hacker Cup 2012, Егор Куликов стал победителем TopCoder Open 2012, Геннадий Короткевич поступил в ИТМО, Владислав Епифанов первым откликнулся на слова Петра Митричева "Попробуйте, отберите в следующем году" на Russian Code Сup, школьники сборной России отрешались на четыре золотых медали на IOI, СпбГУ #4 уверенно победили на Всесибирской олимпиаде, а под конец года настоящий action развернулся в последние минуты заморозки на NEERC, победителем которого в третий раз подряд стала команда Национального исследовательского университета ИТМО. И это — только самые крупные победы команд и участников из России на сравнительно крупных соревнованиях. Если приглядеться повнимательнее, то можно вспомнить несколько не столь приятных для постсоветского сообщества олимпиадных программистов событий, таких как победа Johnny Ho на IOI 2012, победа Китая в суммарном зачете все того же IOI 2012, просто необъяснимуя неудача MIPT The Sun на NEERC с несданной задачей G, "железное" доминирование Saratov SU #3 над другими командами этого университета все на том же NEERC 2012. Если говорить о чем-то более радужном, то можно также отметить огромное количество раундов в 2012 году на Codeforces, золотое выступление MIPT Waterogers на финале ACM ICPC 2012, два Белорусских комплекта медалей все на том же финале ACM ICPC 2012, проведенные VK Cup и AI Cup. Об этих событиях помнят все, они обсуждались, многие из них неоднократно становились причинами разного рода шуток. Но есть события и, связанные с ними, люди, которые не столь заметны и обсуждаемы, насколько они этого заслуживают, исходя из их важности для нас и нашего сообщества. На одном из таких событий я бы и хотел сделать серьезный акцент. Но... Обо всем по порядку.

На дворе начало августа. Близятся Петрозаводские сборы. Я усиленно готовлю контест для этих сборов. Во время подготовки я понимаю, что одну из задач неплохо бы было сделать интерактивной, но я не имею ни малейшего представления о том, как же грамотно подготовить интерактивную задачу. Я пытаюсь придумать хоть сколько-нибудь подходящую замену интерактивности, но получается какая-то ерунда. Как итог, одна из малопригодных замен интерактивности оформляется в polygon. К моему счастью, Павел Абизяев (Nyatl) и Владимир Чалышев (cmd) согласились мне помочь с подготовкой контеста (за что им отдельное "спасибо"). От Паши Абизяева я узнал о том, что уже в сентябре планируется Гран-При Удмуртии, автором которого является он сам (если я не ошибаюсь, идея одной из задач принадлежит его тренеру — Юрию Когану). И, казалось бы, нет в этом ничего удивительного, это — далеко не первый Гран-При Удмуртии, в подготовке которого участвует Паша Абизяев. Но дело в том, что контест этот — особенный, все десять предложенных в нем задач — интерактивные. Да, Паша сам разобрался с тем, как разрабатываются интерактивные задачи, сам подготовил десять интерактивных задач достаточно высокой сложности (за исключением окончательных условий, с ними отдельная песня была). Более того, он лично предложил модифицированные варианты этих же задач для второго дивизиона Открытого кубка, опять же, всех десяти. Чтобы больше не возвращаться к теме моего контеста, скажу, что с непосредственной помощью Паши Абизяева мы подготовили интерактивный вариант той самой злополучной задачи и дали его на Петрозаводские сборы. Да, не все так гладко прошло на контесте, как хотелось бы, но эта задача стала первой интерактивной задачей в истории Петрозаводских сборов. С ее помощью мы предупредили несколько серьезных ошибок на будущем Гран-При Удмуртии. Кроме того, тренер Саратовского ГУ и один из авторов проекта Codeforces — Михаил Мирзаянов на фоне всей этой Петрозаводской шумихи на тему интерактивных задач опубликовал на Codeforces пост, в котором описал свой взгляд на интерактивные задачи и поднял на обсуждение детали реализации интерактивных задач. Позже, это вылилось в модификацию библиотеки testlib и проекта polygon, а также первую интерактивную задачу на Саратовском четвертьфинале.

Стоит отметить, что Паша до последнего заботился о том, чтобы участники получали наиболее объективные и информативные вердикты. Буквально за считанные часы до начала Гран-При Удмуртии в ejudge еще вносились изменения с целью исправить неправильные вердикты, которые он периодически выдавал. Удивительно, но контест (не смотря на достаточно большую очередь тестирования, что вполне объясняется интерактивностью) удался на славу. После него — море положительных отзывов и огромное количество обсуждений на тему интерактивных задач. Стоит ведь задуматься над тем, что такое интерактивные задачи. Это — огромный пласт принципиально новых задач, решать и тестировать которые намного сложнее. Многие из этих задач без интерактивности вообще не имеют смысла. Без всякого преувеличения этот Гран-При можно назвать настоящим прорывом. Это был невероятный по сложности и времени подготовки эксперимент, который дал огромный толчок развитию спортивного программирования. Что касается самого Паши Абизяева, то мне бы хотелось отметить его невероятное умение придумывать задачи. Он видит задачи во всем, что его окружает. Фанатизм? Может быть. В плане участия в олимпиадах он не был настолько же заметен, насколько и такие гранды подготовки контестов, как Андрей Станкевич и Петр Митричев, но как автора задач я бы вполне мог поставить его с ними в один ряд. Если посмотреть на тот проблемсет, который удался ему на последнем Гран-При Удмуртии, то можно заметить, что кроме двух задач, каждую из задач решила хотя бы одна команда, но лишь одной команде удалось решить хотя бы половину задач. А одна из задач и вовсе ушла на Новогодний "Простой" контест.

Возвращаясь к теме, которую я затрагивал в самом начале этого поста, я бы хотел сказать, что этот проблемсет действительно заслуживает звания "Лучший проблемсет 2012 года". Хотелось бы, чтобы такая инициатива и такой труд были вознаграждены хотя бы таким образом. Все сравнимые с ним проблемсеты готовились целыми группами разработчиков, в то время как этот (за исключением окончательных текстов условий) Паша подготовил сам, без всякой помощи. Можно говорить о том, что это — агитация. Словом, я проконсультировался с Олегом Богдановичем, агитация отнюдь не запрещается. Моей основной задачей было обратить внимание общества на этот проблемсет и его важность для сообщества спортивных программистов.

На этом, господа, мои мысли и мой словарный запас исчерпаны. Спасибо за внимание.

  • Vote: I like it
  • +49
  • Vote: I do not like it