思路
思路就是输出ABCDEF,然后每一行都是从小到大排好序的,然后再总的起来排序,在每一行里的数字就是代表他所在的字母,然后输出。思路就是用一个二维数组装,然后每输出一个数组就用后边的数字把前面的呢个给覆盖掉,等到每一行的数字都输出出来,就结束了。
代码
#include<iostream>
#include<cstdio>
int main()
{
int cha[6],sum=0;
int number[6][9];
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&cha[i]);
sum+=cha[i];
for(int j=0;j<cha[i];j++)
{
scanf("%d",&number[i][j]);
}
}
// for(int i=0;i<cha[0];i++) printf("ssss%d ",number[0][i]);
int min=100;
int hh;
for(int k=0;k<sum;k++)
{
for(int i=0;i<n;i++)
{
if(min>number[i][0]&&cha[i]>0)
{
min=number[i][0];
hh=i;
}
// printf("%d",hh);
}
// printf("===%d===",hh);
for(int j=1;j<cha[hh];j++)
{
number[hh][j-1]=number[hh][j];
}
cha[hh]-=1;
if(hh==0)printf("A");
else if(hh==1)printf("B");
else if(hh==2)printf("C");
else if(hh==3)printf("D");
else if(hh==4)printf("E");
else if(hh==5)printf("F");
min=100;
}
//printf("sssssssssss");
return 0;
}