编号统计
时间限制: 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; } }