去哪儿笔试题为什么不能AC100%
#include<iostream>
#include<map>
using namespace std;
int main()
{
int num;
map<int,int>hash;
while(cin>>num)
{
if(hash.find(num)!=hash.end())
{
hash[num]++;
}
else
{
hash[num]=1;
}
}
int maxnum=0;int sum=0;int id=-1;
for(map<int,int>::iterator
iter=hash.begin();iter!=hash.end();iter++)
{
sum=sum+iter->second;
if(iter->second>maxnum)
{
maxnum=iter->second;
id=iter->first;
}
}
if(2*maxnum>sum)
{
cout<<id<<endl;
}
else
{
cout<<-1<<endl;
}
}