问题描述:找出一组数字出现次数最多的数,如果有多个这样的数,输出其中最小的一个。
算法:sort排序,遍历数组,每遍历一个数,查出它已经出现的次数。
代码:
#include<bits/stdc++.h> using namespace std; int main() { int n; cin>>n; int a[1005]; for(int i=0;i<n;i++) { cin>>a[i]; } sort(a,a+n); int k=0,flag=0,max=0; for(int i=0;i<n;i++) { k=0; for(int j=0;j<i;j++) { if(a[j]==a[i]) { k++; } if(k>max) { max=k; flag=i; } } } cout<<a[flag]; return 0; }