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

Новогодний розыгрыш

Новогодний розыгрыш
Понимаете, каждый год 31 декабря мы с друзьями разыгрываем подарки. Это у нас такая традиция…

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

Подарков на всех может не хватить, поэтому, чтобы никому не было обидно, однажды мы решили, что каждый захватит по одному «общественному» подарку. И на месте решим, кто кому и что дарит.

Всегда находились те, кто приносил в качестве сувенира зеркальце, губную помаду, шахматы. То есть, подарки, с заранее ограниченным множеством возможных получателей. Пришедшие на праздник пары не хотели дарить данный подарок друг другу, так как заранее знали, что у них заготовлено.

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

И вот, наконец, в этом году дошли руки увековечить накопленный опыт в области «новогоднего розыгрыша» в виде сайтика, которым я и хочу с вами поделиться.

В самом сайте нет почти ничего необычного, html + javascript. Есть английская версия. Создавался пару дней, поэтому не ругайте особо. Для нахождения пар используется рандомизированный поиск в глубину. Есть проблема со временем выполнения поиска при большом количестве ограничений. Если у кого-то найдутся добрые руки, буду рад коммиту: github.com/simbajoe/newyear [1].

Совсем немного времени осталось до Нового Года, католическое Рождество наступает, христианское разогревается, а старый новый год забивает трубку. Надеюсь, что кому-то данный новогодний сайт пригодится.

Всех с наступающим!

Ссылка на сайт: newyear.simbajoe.name [2].

Новогодний розыгрыш

Автор: simbajoe

Источник [3]


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

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

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

[1] github.com/simbajoe/newyear: https://github.com/simbajoe/newyear

[2] newyear.simbajoe.name: http://newyear.simbajoe.name

[3] Источник: http://habrahabr.ru/post/206732/