出现次数最多的数
一:题目描述
第一道题:
给定n个正整数,找出它们中出现次数最多的数。如果这样的数有多个,请输出其中最小的一个。
二:理解
将输入的数作为数组的下标: num[x]++;
将个数最大的num[x]找出来: maxn = max(maxn,num[x]);
最后,遍历一遍,先满足manx == num[x]; 就是要找的数。
三:代码
#include<iostream>
#include<cmath>
//#include<bits/stdc++.h> //这个是万能头文件,也可以用。
using namespace std;
int num[10005];
int main()
{
int n, maxn = 0, x;
cin >> n;
for(int i = 0; i < n; i++)
{
cin >> x;
num[x]++;
maxn = max(maxn,num[x]);
}
for(int i = 0; i <= 10000; i++)
{
if(maxn == num[i])
{
cout << i;
break;
}
}
return 0;
}