#1844. 【提高】循环赛日程表
【提高】循环赛日程表
题目描述
设有 个运动员要进行网球循环赛。请设计一个满足下列要求的比赛日程表:
- 每个选手必须与其他 个选手各赛一次;
- 每个选手每天只能参赛一次;
- 循环赛在 天内结束。
需要输出一个 行、 列的表,第 行表示第 个选手的日程;该行中的第 个数表示第 个选手在第 天对应的选手编号。第 天可填选手自己作为表头,因此样例中第 列为 。
输入格式
输入一行一个整数 。
输出格式
令 。输出 行,每行 个整数,相邻整数之间用一个空格隔开,表示循环赛日程表。
3
1 2 3 4 5 6 7
2 1 4 3 6 5 8
3 4 1 2 7 8 5
4 3 2 1 8 7 6
5 6 7 8 1 2 3
6 5 8 7 2 1 4
7 8 5 6 3 4 1
8 7 6 5 4 3 2
数据范围与提示
- ,即 。
- 请按照样例所示的递归构造表输出。
来源
递归与分治