题目:
http://acm.hdu.edu.cn/showproblem.php?pid=1004
代码:
#include<cstdio>
#include<cstring>
const int maxn=1005;
char s[maxn][20];
int num[maxn];
int flag=0;
int main()
{
int N;
while(~scanf("%d",&N))
{
if(N==0) break;
memset(num,0,sizeof(num));
memset(s,'\0',sizeof(s));
int i;
for(i=1;i<=N;i++)
{
char str[20];
scanf("%s",str);
for(int j=0;j<=flag;j++)
{
if(strcmp(str,s[j])==0){
num[j]++;
break;
}
}
if(j>flag)
{
strcpy(s[j],str);
num[j]++;
}
flag++;
}
int max=num[0];
int maxi=0;
for(i=1;i<=flag;i++)
{
if(num[i]>max)
{
max=num[i];
maxi=i;
}
}
printf("%s\n",s[maxi]);
}
return 0;
}