描述
sps是zzq的好伙伴。
sps一天叫来了许多个妹子。然后sps看了看这些妹子,说了m个数。这m个数中出现次数最多的数就是sps最喜欢的妹子的编号。因为sps非常专一,他最喜欢的妹子的编号出现的次数大于m的一半。
你自然想知道一下sps最喜欢哪个妹子。
m<=1000000。m个数均在int范围内的正数。
注意看时空限制!
输入格式
第一行一个数m。
第二行m个数。
输出格式
输出出现次数最多的数。
备注
空间1.2MB,连m个数都存不下。
样例输入:
8
2 3 3 2 3 3 2 3
样例输出:
3
由于答案一定是大于n/2的,所以,记一个ans,cnt如果相同,cnt++。不同,cnt–。ans一定是答案。
#include<iostream>
#include<cstdio>
using namespace std;
int n,ans,cnt;
int main()
{
scanf("%d",&n);
int x;
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
if(x!=ans)
{
cnt--;
if(cnt<0)
{
ans=x;
cnt=1;
}
}
else
cnt++;
}
printf("%d\n",ans);
return 0;
}