题意及思路

  • 题意:找到出现次数最多的数,若有次数相同的就输出第一个出现的。
  • 思路:😊主要思想是,迭代执行!将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;
}