Как вы наверняка знаете, большинство раундов на Codeforces созданы активными участниками нашего сообщества. Мы очень благодарны талантливым авторам со всего мира за то, что они знакомят десятки тысяч участников наших соревнований со своими идеями, предоставляя возможность учиться и получать удовольствие от решения задач как новичкам, так и лучшим в мире спортивным программистам. Этот пост расскажет, как стать автором задач и провести раунд на Codeforces.
Кто может стать автором
Обычно авторами наиболее интересных и качественных задач являются опытные участники. Так как наши ресурсы по обработке предложений задач ограничены, то с 1-го января 2021, для предложения своих задач вы должны удовлетворять следующим условиям:
- рейтинг — 2100 или выше, или
- уже был автором.
В будущем ограничения могут быть изменены, пост будет обновлен. Если вы уже открыли ваш раунд для ревью, то он будет рассмотрен независимо от действующих ограничений, не волнуйтесь.
Если вы не подходите под данные ограничения, но являетесь опытным автором задач или членом жюри других соревнований, напишите личное сообщение кому-нибудь из координаторов (перечислены ниже) о своем желании провести раунд и о вашем опыте проведения соревнований.
Как предложить раунд
Если вы удовлетворяете ограничениям, в правом личном меню у вас будет ссылка "Предложить контест/задачи". Нажмите на ссылку и, следуя инструкциям, вы сможете подготовить и отправить свое предложение раунда.
Через некоторое время вам будет назначен координатор(ы). Они рассмотрят ваше предложение, напишут комментарии, и вы сможете обсудить задачи с ними. Пожалуйста, не затягивайте, отвечайте координатором и вносите предложенные поправки вовремя. Координаторы Codeforces — очень опытные участники и авторы задач, поэтому, пожалуйста, уважайте их мнение. Учтите, что их мнение по задачам будет решающим.
Наши опытные координаторы: Aleks5d, errorgorn, irkstepanov, IgorI, Artyom123, 74TrAkToR, ScarletS, Akulyat, TheScrasse, 244mhq, satyam343, Vladithur и KAN.
Вы можете предложить только набор задач для Div 2 или Div 1 + Div 2 раунда целиком. Мы не рассматриваем предложения отдельных задач. Также мы не рассматриваем предложения Div 3/4 и образовательных раундов.
Как подготовить задачи
Задачи для раундов Codeforces готовятся в системе Polygon. Не рекомендуется начинать подготовку задач до того, как они будут согласованы с координатором, особенно, если это ваш первый раунд.
Для каждой задачи вам нужно будет написать понятное условие (на русском или английском языке), написать валидатор (программу, которая проверяет корректность тестов), если нужно, чекер (программу, которая проверяет ответ участника), и, конечно, правильное решение. Также вам нужно будет подготовить тесты, на которых будут тестироваться решения участников. Ваш координатор переведет условие, если нужно, а также будет проверять вашу работу и скажет, что нужно изменить или добавить.
Перед тем, как начать работу над задачами, даже если у вас ест опыт работы с Polygon, обязательно прочитайте правила. Все чекеры, валидаторы, интеракторы и генераторы пишутся, используя библиотеку testlib.h. Вы можете прочитать описание по ссылке и скачать примеры из Polygon. Если у вас возникают какие-то проблемы или сложности в подготовке задач, смело обращайтесь к вашему координатору, он поможет. Лучше и быстрее сразу сделать что-то правильно, чем сделать неправильно и затем переделывать.
Вознаграждение авторам
Придумывать и готовить задачи — интересная, но в то же время непростая и объемная работа. Авторы раундов на Codeforces получают вознаграждение, указанное в таблице:
Тип раунда | $* |
Спонсорский** | $900 |
Div 1 + Div 2 | $600 |
Div 2 | $300 |
*Если вознаграждение может быть выплачено в криптовалюте, оно может быть увеличено на 25%.
**Спонсорские раунды выбираются координаторами из числа предложенных заявок.
Заключение
Мы надеемся, что с вашей помощью мы сможем все также радовать вас регулярными раундами из свежих интересных задач! Если у вас остались какие-либо вопросы о том, как стать автором раунда, спрашивайте в комментариях. Обратите внимание, нерелевантные или устаревшие комментарии в этом блоге будут иногда удаляться, чтобы сохранить информацию актуальной.