#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
int main()
{
string a[1000];//创建字符串为元素的数组
int n;
while(cin>>n){
//另一种持续输入的方法
if(n==0)
break;
int b[1000]={
0};//初始化
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<n-1;i++){
for(int j=i;j<n;j++){
if(a[i]==a[j])
b[i]++;//记录出现的次数,以首次出现的下标为据
}
}
int MAX=0;
for(int i=1;i<n;i++){
if(b[i]>b[MAX])
MAX=i;
}
cout<<a[MAX]<<endl;
}
return 0;
}
利用了两个数组的单词与其出现的次数下标相等解题,本质上相当于一个映射(map)