题意及思路
- 题意:找到出现次数最多的数,若有次数相同的就输出第一个出现的。
- 思路:😊主要思想是,迭代执行!将n个数的值存入p数组,🙂每次将 p[x]的数所对应的cnt数组中位置增一(cnt为记录p数组元素出现的次数)。😄然后,比较max与cnt [ p[x] ]的大小,max小的话就更新max数据操作。
- 思想:迭代更新!
代码
#include <bits/stdc++.h>
using namespace std;
int main(){
int p[150],cnt[300],n;
memset(cnt,0,sizeof(cnt));
cin >> n;
for(int i=0;i<n;i++) cin >> p[i];
int max = -1,ans = 0;
for(int i=0;i<n;i++){
cnt[p[i]]++;
if(cnt[p[i]]>max){
max = cnt[p[i]];
ans = p[i];
}
}
cout << ans << endl;
return 0;
} 
京公网安备 11010502036488号