首页 > 编程知识 正文

循环赛日程表算法分析(循环比赛日程表)

时间:2023-05-04 04:23:18 阅读:121394 作者:92

【题目描述】

n名选手进行循环赛,其中N=2M,要求每名选手与其他n1名选手进行一次比赛,每名选手每天进行一次比赛,循环赛共进行n1天,要求每天选手不换人。

【输入】

输入: m。

【输出】

输出:表格形式的比赛日程表。 一行中的每个数据之间用空格分隔。

【输入样例】

3 【输出样例】

1 2 3 4 5 6 7 8

2 1 4 3 6 5 8 7

3 4 1 2 7 8 5 6

4 3 2 1 8 7 6 5

5 6 7 8 1 2 3 4

6 5 8 7 2 1 4 3

7 8 5 6 3 4 1 2

8 7 6 5 4 3 2 1

# include bits/stdc.husingnamespacestd; int a[100][100]; voidJiSuan(intn ) { int m=n/2; for(intI=0; im; I ) for(intj=0; jm; j () { a[i][j m]=a[i][j] m; a[i m][j]=a[i][j m]; a[i m][j m]=a[i][j]; }voidsai(intn ) if ) n==1) { a[0][0]=1; 返回; (sai ) n/2; JiSuan(n; (}int main ) ) { int n; cinn; intm=pow(2,n ); Sai(m; for(intI=0; im; I ) for(intj=0; jm; j ) couta[i][j] '; coutendl; }返回0; }

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。