Добрый день. Помогите пожалуйста.
Есть задача по комбинаторике, составление турнирной сетки. Для ее решения, по описанию из wiki, идеально подходит Схема Хауэлла, но не могу найти описание алгоритма.
Если кто-то поделиться описанием, буду очень признателен.
Из вики
Пусть

— множество из

элементов. Схема Хауэлла,

(на множестве символов

) — это массив с количеством колонок и строк

, такой, что:
Каждая ячейка массива либо пуста, либо содержит неупорядоченную пару из

,
Каждый символ появляется в точности один раз в каждой строке и каждом столбце массива,
Каждая неупорядоченная пара появляется не более чем в одной ячейке массива.
Пример схемы

