Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Надо написать алгоритм выборки уникальных значений пар ID пользователей "От кого - кому", как в "Тайном Санте", то есть, с условием уникальности  в каждой итерации. Данные по каждой выборке сохраняются в БД, и каждая последующая выборка сравнивается с 

предыдущими. Количество ID может рандомно меняться (могут добавляться или удаляться пользователи), поэтому каждая операция сравнения должна 

учитывать предыдущие результаты. "Отправитель" не может являться "получателем"

I (1-2, 2-3, 3-4, 4-1)

II (1-3, 2-4, 3-1, 4-2)

II (1-4, 2-1, 3-2, 4-3)

При достижения лимита, "отправителю" добавляется индекс, после этого, он считается уникальным "отправителем". Количество пар строго должно равняться количеству ID в массиве.

III(1a-2, 2a-3, 3a-4, 4a-1)

IV (1a-3, 2a-4, 3-5, 4a-2, 5-1)

...

PS предусмотреть вариант, что бы не выпадала комбинация, когда "отправитель" является единственным вариантом получателя 

1-2, 2-3, 3-1 - 4-? 

4 года назад
aristov
Михаил 
41 годРоссия
17 лет в сервисе
Был
3 года назад