设有N个选手进行循环比赛,其中N=2^M,要求每个选手要与其他N-1选手都赛一次,每个选手每天比赛一次,循环N-1填,要求每天没有选手轮空。
输入一个正整数M
输出表格形式的比赛安排表。
一行中各数据间用一个空格隔开。
#include<bits/stdc++.h> using namespace std; const int MAXN=1025, MAXM=11; int a[MAXN][MAXN]; int m; int main( ) { scanf("%d",&m); int n=1<<m,k=1,half=1; ____(1)_____ while(k<=m) { for(int i=0;i<half;i++) { for(int j=0;j<half;j++) { a[i][____(2)___]=____(3)_____; } } for(int i=0;i<half;i++) { for(int j=0;j<half;j++) { a[i+half][j]=_____(4)_____; a[i+half][j+half]=a[i][j]; } } _____(5)_____ k++; } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { printf("%d ",a[i][j]); } putchar('\n'); } return 0; }