题目大意:爷爷是大神,现在大神要入吉尼斯,但是有人和大神竞争啊,大神想知道有谁和他竞争。
输入N*M,N就是N次比赛,M是个人成绩,也是个人身份。
N次比赛中出现次数最多的就是大神,要输出出现次数仅此于大神的所有人。
解法:明白题意很好做,水题一道,一个sort就解决了
//Memory: 200 KB
//Time: 204 MS
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
struct play
{
int num;
int s;
};
bool cmp(play a,play b)
{
if(a.s==b.s)
return a.num<b.num;
else
return a.s>b.s;
}
int main()
{
int n,m,i,j;
while(~scanf("%d%d",&n,&m))
{
play p[10003];
memset(p,0,sizeof(p));
int temp;
if(n==0 && m==0)
break;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
scanf("%d",&temp);
p[temp].num=temp;
p[temp].s++;
}
sort(p,p+10000,cmp);
i=1;
while(p[i].s==p[i+1].s)
{
printf("%d ",p[i].num);
i++;
}
printf("%d\n",p[i].num);
}
return 0;
}