#include <bits/stdc++.h>
using namespace std;
int sum[111];//记录每个学校的队伍数量
int pos[111][11][11];//i学校j队伍中k队员的位置
int maxx,pre;//maxx记录学校中队伍数量的最大值,pre记录上一个被编号的学校
int x;//记录编号
int main()
{
int n;
cin>>n;
int i,max=0;
for (i=1;i<=n;i++){
cin>>sum[i];
if(max<sum[i]){
max=sum[i];
}
}
int j,k;
pre=0;
x=0;
for (j=1;j<=max;j++){//以最大队伍为上线
for (k=1;k<=10;k++){//循环每个队员
for (i=1;i<=n;i++){ //循环每个学校
if(j<=sum[i]){ //看有没有超过自己学校的队伍
if(pre==i){//pre被用来标记上个被编号的学校 如果还是自己学校那么需要隔开座
x+=2;
}
else {
x++;
}
pos[i][j][k]=x;
pre=i;
}
}
}
}
for (i=1;i<=n;i++){
cout<<"#"<<i<<endl;
for (j=1;j<=sum[i];j++){
cout<<pos[i][j][1];
for (k=2;k<=10;k++){
cout<<" "<<pos[i][j][k];
}
cout<<endl;
}
}
return 0;
}
PTA L1-049 天梯赛座位分配 (20 分)
最新推荐文章于 2023-03-31 19:11:06 发布