Как стать автором
Обновить

Комментарии 2

То есть падажжи, сначала ты описываешь как при помощи более сложной функции перебирать варианты в зависимости от рандома в некоторых случаях быстрее, а потом говоришь, что правильным ответом было «перенести клиента поближе к серверу чтобы сэкономить на скорости передачи» и что алгоритмы и параллелизация вообще никакой роли не играют? Так что в итоге проверяла эта игра? Кто способен арендовать сервер в Дублине?
На победу в игре влияли все факторы, и оптимальность алгоритма, и различные технические ограничения.

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

Самый лучший способ набрать максимум балов, которым никто не воспользовался, — это изучить API бекенда и написать код на Python или Go, и каждый баг обрабатывать в отдельном потоке. Это было довольно непросто реализовать на JavaScript, но на Python это было бы просто, и это точно дало бы больший буст, чем запуск JS решения в один поток с сервера с низкими сетевыми задержками.

Мы никак не ограничивали участников в инструментах и способах решения задачи, и игра была создана в основном для развлечения и тренировки. Как я отметил в статье, для подобных игр лучше использовать механизм запуска и проверки решений на стороне сервера (чего я не сделал), тогда оптимальность алгоритма будет иметь большее значение для победы. Это так же позволит контролировать инструменты и язык программирования, с помощью которых участники должны решить задачу.

Все участники были в похожих условиях, и кто-то смог правильно определить самые важные для победы факторы и выжать максимум из доступных ресурсов :)
Зарегистрируйтесь на Хабре , чтобы оставить комментарий