Турнир с Райффайзенбанком

BrainGames.Ru совместно с Райффайзенбанком начинают новую турнирную активность.

В течение августа, сентября и октября мы будем публиковать по 2 отборочные задачи в месяц (отборочный тур). В ноябре среди лучших участников отбора пройдет финальный турнир, где победители получат подарки от Райффайзенбанка.

Следите за ходом отбора и турнира на этой странице.

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

Как проходит турнир

1. Отбор

Раз в две недели публикуем одну из шести отборочных задач

2. Рейтинг

За своей позицией в отборочном туре можно следить на специальной странице

3. Турнир

В ноябре по результатам отбора пройдет турнир с новыми задачами

4. Награждение

Победители получают призы от Райффайзенбанка

Календарь

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

По итогам отбора в ноябре пройдет турнир и победители получат призы от Райффайзенбанка.

Задачи

Август. Отбор

Сентябрь. Отбор

Октябрь. Отбор

Ноябрь. Турнир

Турнир Райффайзен проходит в следующем формате:
  1. Каждый участник, прошедший отбор, получит уведомление на почту и (или) личным сообщением. С общим списком прошедших отбор можно ознакомиться на странице результатов отбора.
  2. До 23:59 14 ноября по московскому времени участники, прошедшие отбор, могут отвечать на три турнирные задачи, приведенные ниже.
  3. Все вопросы по условию можно задать в комментариях к задаче или в ЛС организатору. Но прежде ознакомьтесь с примечаниями к условию задачи. Скорее всего, там уже есть ответ на ваш вопрос.
  4. Перед отправкой ответа убедитесь, что он понятен, достаточно подробно обоснован и в нем нет ошибок. За ответ с описками или мелкими неточностями баллы по задаче могут быть снижены. Ответы без достаточно убедительного обоснования не принесут вам баллов вовсе.
  5. Организаторы сохраняют за собой право субъективно определять, какое обоснование достаточно, а какое нет. Обещаем ко всем спорным случаям отнестись с должным вниманием.
  6. Ответ на каждую задачу может быть отправлен сколько угодно раз. Текст ответа нужно полностью разместить в одном сообщении. Картинки можно добавить отдельными сообщениями, со ссылкой на них в основном ответе. Но все текстовые сообщения будут считаться разными ответами. И проверен будет только самый последний.
  7. Модераторы не будут комментировать или засчитывать ответы до конца турнира.
  8. Правила начисления баллов будут указаны в условиях задач.
  9. Можно получить бонусные баллы за элегантность решения. Они повлияют на распределение мест между участниками с равным количеством основных баллов.
  10. Результаты отборочного тура не будут влиять на распределение мест между участниками турнира.

Награждение

Объявление победителей и церемония награждения состоялась 21.11.21 в 18:00 Мск и транслировалась на socset na Y канале BrainGames.Ru

Победители:
Логин Набранные баллы Бонусы
1. $erges 1042 1
2. AleXXL 976 3
3. zmerch2 938 0
4. vadimkostel 909 2
5. CuSO44ek 880 2
6. mmozg 843 0
7. aximon 807 0
8. Loban 742 0
9. rys6 677 0
10. www 655 0
14. 00 558 1
20. Лиходей 476 1
23. bmikle 422 1
Подробная таблица результатов турнира

О том как мы делали турнир

По договоренности с Райффайзенбанком, турнир должен был состоять из двух частей: отборочного тура и финала. Для отборочного тура планировалось выделить 6 задач, которые публиковались бы в течение трех месяцев. Результат решения этих задач служил бы допуском к финалу. Вторая, основная часть по задумке должна была выглядеть как один из турниров, которые проводились на braingames более восьми лет назад: турнирные задачи размещаются одновременно, ответы можно отправлять в течение отведенного времени, а жюри не сообщает, верно ли решена задача.

Первая проблема, с которой мы столкнулись, — это дефицит разнородных интересных задач в очереди на публикацию. Искать нужно было там, ведь все задачи отборочного тура останутся на сайте, когда турнир закончится. Поэтому они должны проходить по текущим критериям отбора на сайт: набирать нужный перевес голосов за публикацию среди модераторов, иметь окончательное условие и хорошо разобранное решение. Целью отборочного тура было, прежде всего, привлечь как можно больше участников к главному мероприятию. Мы делали ставку на то, что отборочные задачи будут решать активнее, чем обычные. Поэтому важно было соблюсти еще 2 критерия: отборочные задачи должны быть не слишком сложными, но и не слишком устными, при этом достаточно интересными. Формулировка должна цеплять своей доступностью и в то же время провоцировать игрока на быстрый поиск решения, а потом обескураживать тем, что результат, оказывается, еще можно улучшить. На самом деле, мы всегда стараемся публиковать именно такие задачи, но сейчас нужны были самые интересные из них. А чтобы гарантировать равные условия всем участникам, нужно было отсеять задачи, которые уже "светились" за пределами модераторской части форума. Так была забракована очень хорошая задача про развертку куба, которая уже находилась в разделе "Отбор", доступном VIP–игрокам. Она примечательна тем, что эталонный ответ держался несколько лет, после чего результат смог улучшить один из пользователей, чем сильно удивил модераторский коллектив.

Наконец, мы отобрали шесть задач и присвоили им условную сложность по пятибалльной шкале. Изначально планировалось публиковать их в порядке роста сложности, чтобы разница в мотивации участвовать в финале повлияла на результат решения самой сложной задачи. Затем от идеи отказались, чтобы наоборот, сложную задачу решило больше участников. Кстати, последнюю, шестую задачу в выбранном списке мы заменили буквально за пару дней до публикации и не прогадали — задача "Вкусный рацион" набрала 94% симпатий.

Признаться честно, мы ожидали большую активность в отборочном туре. Установленная планка в 100 участников, допущенных к финальному туру, оказалась слишком высокой. И по итогам отбора к турниру пришлось допустить всех, кто решил хотя бы одну отборочную задачу, поскольку таких игроков было всего 107. Вышло так, что сложность задач не повлияла на это: даже самые простые задачи, опубликованные еще в августе, решило меньше сотни игроков.

Следующая проблема касалась трех турнирных задач. Для них критерии отбора намного жестче. Они должны быть не только новыми для участников турнира, но и достаточно сложными, чтобы не получилось десять первых мест с одинаковым максимальным результатом. Однако, и сложности не хватит: задач будет всего три, и бинарная система "зачет/незачет" все равно не обеспечит разнообразие результатов. Поэтому подбирались задачи на оптимизацию некоторого параметра, чтобы детализировать шкалу оценок. Чтобы за неоптимальное решение участник мог получить меньше максимума баллов, но не 0. А еще, если задача легко поддается компьютерному перебору (намного легче, чем ручному), такая задача не очень подходит. Не все умеют или хотят программировать, поэтому справедливо оценить решения не выйдет. Несмотря на то, что разработка эффективного алгоритма перебора — это тоже интересная задача, она не формат для braingames.

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

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

Стоит отметить, что в исходном варианте задачи про предохранители был всего один вопрос: каково минимальное число попыток, гарантирующее включение света. Доказательство минимальности не требовалось, потому что многие варианты доказательства не были лаконичными. Эта часть задачи не представляла особого интереса, и в таких случаях при публикации задачи мы явно не требуем обоснование. Но в связи с тем, что турнирных задач было мало, мы стремились выжать из них весь потенциал. Пришла идея: а что, если на турнире давать баллы и за доказательство минимальности? Так родился окончательный формат задач. В каждой из них будет два параметра для оптимизации. Один нужно максимизировать, а второй, соответственно, минимизировать. Параметры дополняют друг друга, например, в первой задаче параметр M — количество попыток, не гарантирующее включение света, а параметр N — количество попыток, за которое уже можно восстановить электричество, следуя определенному алгоритму. Тогда исходная версия задачи равносильна минимизации N, а доказательство минимальности — это не что иное, как верное решение для максимального M. Зная, насколько разные есть подходы к доказательству минимальности, мы заранее предусмотрели бонусы за самый изящный подход.

По сути, каждая задача разделилась на две самостоятельные части, которые можно решать и оценивать независимо друг от друга. Однако, мы не знали оптимальное значение N в задачах "Бармен" и "Мегазолото" и не считали его поиск настолько увлекательным. Поэтому, чтобы стимулировать участников к оптимизации "основных" параметров, выбрали дополнительные веса всем подзадачам: исходным — побольше (7–9), дополнительным — поменьше (1–3). По задумке, веса 1 и 2 означали возможность заработать баллы для тех, кто решит все остальное и заскучает.

2. Итоги турнира.

Судя по обилию вопросов от участников в первые дни турнира, концепция оказалась не до конца понятной. Ведь в задачах на braingames либо нужно искать оптимальное решение, либо засчитывается любое подходящее (например, "Побег Мегамозга"). И совсем нет задач, которые будут засчитаны за решение одного пункта из нескольких. А в турнирных задачах все наоборот. Принимается любое верное решение, но и оптимизация является целью. Это не написано прямо в условии, но следует из правил оценки. Также не всем было понятно, что нахождение M и N — две независимые подзадачи, и любую из них можно не решать без ущерба для другой. Тем не менее, начальный результат можно было получить во всех подзадачах, лишь прочитав условие. Например, за 0 попыток свет точно не включить, а 101 слиток не унести, потому что их всего 100. Такие результаты тоже могли принести баллы за счет участников, которые не ответили или ошиблись. Но многие участники, в том числе лидеры рейтинга, этой возможностью просто не воспользовались.

Всего в турнире поучаствовало 49 игроков из 107 допущенных (примерно половина). Это неплохой результат, так как многие из прошедших могли просто решать отборочные задачи, не желая участвовать по разным причинам. Участники старались ответить на все три задачи. Большинство ответов были понятными и достаточно подробными. Трудностей в проверке практически не возникло.

В задаче "Форс–мажор" оптимальное N нашли примерно две трети участников, оптимальное M — примерно треть. Задача оказалась простой, но не слишком, что соответствовало ожиданиям организаторов.

В задаче "Бармен" дальше начального результата M = 3 продвинулись 11 участников. Из них 8 использовали эталонную идею. Еще один участник смог обобщить подход, но получил низкий результат для 100 бокалов. И еще двое не обобщили решение. Разнообразие результатов ниже ожидаемого: между M = 4 и M = 50 всего два уникальных значения. Серьезный подход к оценке N сделали три участника, но во всех обоснованиях найдены пробелы, поэтому полных баллов за N не получил никто.

В задаче "Мегазолото" оптимальное M нашли 6 участников. Не получилось достаточного разнообразия результатов, в основном за счет того, что многие участники остановились на M = 15 (это не начальный, но лежащий на поверхности результат). Подход к оценке N сделал всего один участник, но в его доказательстве были найдены ошибки.

За верные в целом, но недостаточно обоснованные ответы жюри снижало баллы либо на 10%, либо на 50%. Критерии были определены после проверки всех ответов. За красивые или лаконичные решения были начислены бонусные баллы. Поскольку основные баллы ни у каких двух участников не совпали, жюри приняло решение, что бонусы будут суммироваться отдельно. Подробности можно узнать в таблице результатов.

Мы обязательно учтем возникшие трудности при организации турниров в будущем.