这道题大致的意思就是求出哪种气球颜色出现的次数越多,一开始需要将气球的颜色和气球出现的次数联系起来,所以我选择了map,因为气球的颜色可以看作是一个键值,其内的元素就是颜色出现的次数,接下来有了思路就好做了。不过第一次提交的时候发生了segmentation fault,看了许久我发现问题出现在我设置的气球颜色出现次数元素的最大值上,我将大于号换成了大于等于号就不会出现这个问题了,避免第一个键值颜色就会是最多的情况,下面是我的ac代码:
#include<iostream>
#include<map>
#include<cstring>
using namespace std;
int main()
{
int n,max;
map<string,int> a;
map<string,int>::iterator a1,a2;
string b;
while(cin>>n)
{
if(n==0)break;
for(int i=0;i<n;i++)
{
cin>>b;
a[b]++;
}
max=a.begin()->second;
for(a1=a.begin();a1!=a.end();a1++)
{
if(a1->second>=max){max=a1->second;a2=a1;}
}
cout<<a2->first<<endl;
a.clear();
}
return 0;
}