Задача №111183. Расписание турнира
Как известно, командные спортивные соревнования часто проводятся по круговой системе, когда любые две команды должны сыграть между собой ровно один матч. Круговой турнир проводится в несколько туров, в одном туре каждая команда может сыграть не более одного матча. Например, если в турнире участвуют 4 команды, то турнир можно провести в три тура: в первом туре команда 1 играет с командой 2, а команда 3 играет с командой 4, во втором туре 1 играет с 3, а 2 играет с 4, в третьем туре — 1 играет с 4, а 2 играет c 3.
Организаторам олимпиады Сочи-2014 необходимо организовать несколько командных турниров по круговой системе с участием различного числа команд. График олимпиады очень плотный, поэтому каждый турнир нужно провести в минимально возможное число туров. Для составления расписания каждого турнира они решили обратиться за помощью к программистам.
Во входном файле записано одно натуральное число N — количество команд, участвующих в турнире (2 ≤ N ≤ 100).
В первой строке выведите минимальное количество туров K, необходимых для проведения кругового турнира из N команд. Каждая из K следующих строк содержит описание одного тура. В начале строки выведите количество игр ni, которое необходимо сыграть в i-м туре. Далее идет ni пар чисел — команды, которые играют в этом туре. Команды, играющие между собой, разделяются символом «-» (минус), а разные игры разделяются пробелом.
4
3
2 1-2 3-4
2 1-3 2-4
2 1-4 2-3
3
3
1 1-2
1 2-3
1 3-1
Online-группа тестов содержит тесты для N ≤ 10 и оценивается в 40 баллов.
Offline-группа тестов оценивается в 60 баллов.