编号统计
时间限制:2000 ms | 内存限制:65535 KB难度:2
- 描述
- zyc最近比较无聊,于是他想去做一次无聊的统计一下。他把全校同学的地址都统计了一下(zyc都将地址转化成了编码),然后他希望知道那个地方的同学最多(如果同学最多的地方有多个,输出编号最小的一个)。
- 输入
- 第一行输入一个正整数T(0<T<=11)表示有T组测试数据
每组测试数据第一行输入一个正整数N(0<N<200000)表示有N个编号,随后输入N个编码(编码由数字组成且少于十位) - 输出
- 每组数据输出占一行输出出现次数最多的编号
- 样例输入
-
1 5 12345 456 45 78 78
- 样例输出
-
78
#include<iostream>
#include<map>
#include<cstdio>
using namespace std;
int main()
{
int t;cin>>t;
while(t--){
map<int,int> m;
int n,v;cin>>n;
for(int i=0;i<n;i++){
scanf("%d",&v);
m[v]++;
}
int c=0;
map<int,int>::iterator it0=m.begin();
for(map<int,int>::iterator it=m.begin();it!=m.end();it++)
if(c<it->second)c=it->second,it0=it;
cout<<it0->first<<endl;
}
}