Letthe Balloon Rise
Time Limit: 2000/1000 MS (Java/Others) MemoryLimit: 65536/32768 K (Java/Others)
Total Submission(s): 44096 Accepted Submission(s): 15575
Problem Description
Contesttime again! How excited it is to see balloons floating around. But to tell youa secret, the judges' favorite time is guessing the most popular problem. Whenthe contest is over, they will count the balloons of each color and find theresult.
This year, they decide to leave this lovely job to you.
Input
Inputcontains multiple test cases. Each test case starts with a number N (0 < N<= 1000) -- the total number of balloons distributed. The next N linescontain one color each. The color of a balloon is a string of up to 15lower-case letters.
A test case with N = 0 terminates the input and this test case is not to beprocessed.
Output
Foreach case, print the color of balloon for the most popular problem on a singleline. It is guaranteed that there is a unique solution for each test case.
Sample Input
5
green
red
blue
red
red
3
pink
orange
pink
0
Sample Output
red
pink
Author
WU,Jiazhi
Source
Recommend
JGShining
题目大意:输出颜色出现最多次数的颜色;
解题思路:用stl map做
/*Let the Balloon Rise HDU1004*/
#include <iostream>
#include <cstdio>
#include <map>
using namespace std;
map<string, int> m;
int main(int argc, char *argv[])
{
int n;
string ball;
while(scanf("%d",&n)!=EOF,n)
{
int max=0;
for(int i=0; i<n; i++)
{
cin>>ball;
m[ball]+=1;
if(max<m[ball])
max=m[ball];
}
map<string, int>::iterator it=m.begin();
for(;it!=m.end();it++)
{
if(max==it->second)
cout<<it->first<<endl;
}
m.clear();
}
return 0;
}