Я ищу алгоритм для расчета пар из класса n (список имен учеников) за w недель, чтобы ученик никогда не сотрудничал с одним и тем же учеником в течение двух разных недель.Предположим, что n чётное.
Пример:
класс: студенты 1,2,3,4
недели: 3
- расписание1 неделя: (1,2), (3,4)
- расписание на неделю 2: (1,3), (2,4)
- расписание на неделю 3: (2,3), (1,4)
Я полагал, что w должно быть меньше или равно n - 1, потому что каждый студент может максимально сотрудничать с n - 1 другими.Но я не знаю, всегда ли есть n - 1 решения.Если таковые имеются, я хотел бы увидеть алгоритм, который генерирует эти n - 1 решения безобломочным способом.
Есть ли название этой проблемы и общий алгоритм, на который я должен обратить внимание?