个人博客:doubleq.win
时间限制: 1 s
空间限制: 1000 KB
题目等级 : 青铜 Bronze
题目描述 Description
由文件给出N个1到30000间无序数正整数,其中1≤N≤10000,同一个正整数可能会出现多次,出现次数最多的整数称为众数。求出它的众数及它出现的次数。
输入描述 Input Description
输入文件第一行是正整数的个数N,第二行开始为N个正整数。
输出描述 Output Description
输出文件有若干行,每行两个数,第1个是众数,第2个是众数出现的次数。
样例输入 Sample Input
12
2 4 2 3 2 5 3 7 2 3 4 3
样例输出 Sample Output
2 4
3 4
数据范围及提示 Data Size & Hint
仔细看题
1 #include<iostream>
2 using namespace std;
3 int a[100001];
4 int tot=0;
5 int b[100001];
6 int maxn;
7 int ma;
8 int main()
9 {
10 int n;
11 cin>>n;
12 for(int i=1;i<=n;i++)
13 {
14 cin>>a[i];
15 b[a[i]]++;
16 if(b[a[i]]>maxn)
17 maxn=b[a[i]];
18 if(a[i]>ma)
19 ma=a[i];
20 }
21 for(int i=0;i<=ma;i++)
22 {
23 if(b[i]==maxn)
24 {
25 cout<<i<<" "<<b[i]<<endl;
26 }
27 }
28 return 0;
29 }