文章
20
粉丝
147
获赞
13
访问
51.7k
#include <bits/stdc++.h>
int main(){
int n[100];
int m;//输入的次数
scanf("%d",&m);
int i=0;
while(i<m){
scanf("%d", &n[i]);
i++;
}
int k[100]={0};
//遍历数组n,用数组k存储n中每个位置与之相同的数字的个数
for(int i=0;i<m;i++){
int count=1;
for(int j=0;j<m;j++){
if(j!=i&&n[i]==n[j])
count++;
}
k[i]=count;
}
//从数组k中找到最大的值
int max=0;
for(int i=0;i<m;i++){
if(k[i]>max){
max=k[i];
}
}
//可能有多个数的相同值都为这个最大数,例如2和4的个数都为5
//循环数组k,找出值为max的 数组下标存放在数组p中
int p[1000]={0};
int j=0;
for(int i=0;i<m;i++){
if(max==k[i]){
p[j]=i;
j++;
}
}
//遍历数组p
int min=n[p[0]];
for(int i=0;i<j;i++){
if(n[p[i]]<min)
min=n[p[i]];
}
printf("%d",min);
return 0;
}
登录后发布评论
暂无评论,来抢沙发