Это приложение принимает список людей и случайным образом распределяет кто и кому будет дарить подарок.
Подробнее можно посмотреть здесь: http://ru.wikipedia.org/wiki/Секретный_Санта
Следует заметить, что для случайного распределения используется:
- алгоритм Фишера–Йетса, что позволяет добиться максимальной честности;
- генератор псевдослучайных чисел Fortuna, который выдает более непредсказуемые числа, чем Math.random().