- PVSM.RU - https://www.pvsm.ru -

Конкурс по программированию: JSDash (промежуточные результаты 3)

Спасибо всем, кто уже принял участие в нашем конкурсе по программированию [1]! Мы получили 60 решений от 34 уникальных участников. До конца конкурса осталась одна неделя (до 17 августа 2017, 23:59:59 UTC), и мы публикуем последние предварительные результаты.

Пока что вместо имён участников — идентификаторы решний. Ваш идентификатор — в автоматическом письме, которое Вы получили после отправки решения. Не возбраняется в комментариях к этому посту раскрывать, что такое-то решение — Ваше.

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

Результаты промежуточного тестирования опубликованы на GitHub [2]. В таблицах приведены суммарные результаты, а также отдельные показатели для каждого из уровней. Как и в прошлый раз, мы подготовили также таблицы с числом собранных алмазов, убитых бабочек, цепочек (streaks) и максимальной длиной цепочки. В зачёт все эти показатели не пойдут — победитель будет определён исключительно по сумме набранных очков.

Мы публикуем также способ, который обещаем использовать для выбора затравочных значений для финального тестирования. Этот способ должен быть однозначным и легко проверяемым, но непредсказуемым. Итак, мы возьмём первый твит из этого Твиттера [3], который появится там после наступления дедлайна. Согласитесь, что влиять на его твиты мы не можем. Из твита берём только текст, без картинок и видео. Если в твите нет текста, а только картинка, то берём следующий твит. Ретвиты считаются. Имя ретвитнутого аккаунта не берётся.

Из текста твита мы получим затравочные значения так:

const random_js = require('random-js');
const text = 'The tweet goes here';
const bytes = Array.from(new Buffer(text));
const random = new random_js(random_js.engines.mt19937().seedWithArray(bytes));
for (let i = 0; i<20; i++)
    console.log(random.uint32());

(Если будет нужно, то сгенерируем и более 20 чисел.)

Присылайте свои решения! Осталась неделя, чтобы обойти нынешних лидеров.

Автор: feldgendler

Источник [4]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/262048

Ссылки в тексте:

[1] конкурсе по программированию: https://habrahabr.ru/company/hola/blog/332176/

[2] на GitHub: https://github.com/hola/challenge_jsdash/blob/master/blog/04-preliminary-standings-2017-08-10.md

[3] этого Твиттера: https://twitter.com/realDonaldTrump

[4] Источник: https://habrahabr.ru/post/335376/