#include<string>
#include<iostream>
using namespace std;
const int maxn=1010;
string color[maxn];
int cnum[maxn]={0};
int main()
{
int n,endp=0;
int find=-1;
string temp;
int ns;
while((cin>>n)&&n!=0)
{
for(int i=0;i<maxn;i++)
cnum[i]=0;
endp=-1;
while(n!=0)
{
n--;
cin>>temp;
find=-1;
for(int i=0;i<=endp;i++)
{
if(temp==color[i])
{find=i;
break;}
}
if(find>=0)
cnum[find]++;
else
{
endp++;
color[endp]=temp;
cnum[endp]++;
}
}
int most=0,tmost=0;
for(int i=0;i<=endp;i++)
{
if(cnum[i]>most)
{most=cnum[i];
tmost=i;
}
}
cout<<color[tmost]<<endl;
}
return 0;
}
————————————————————————————————————————————————————————————————————————
我的代码写的一般比较直观,但是又长又给人感觉很菜鸟,就是建立一个字典,然后在字典中查找相应的字符串即可,错误是出在把endp的初始值设定成了0,后来发现这个问题了