解题思路:
注意事项:
参考代码:
#include<stdio.h>
#define N 50001
typedef struct SNum{
int s; //元素的值
int t; //元素在多重集合中出现的次数
}Num;
Num S[N];
int main(){
int n,s,i,v,m=0,c=0;
scanf("%d",&n);
while(n--){ //n行中
scanf("%d",&s); //每行一个自然数
for(i=0;i<c;i++){ //寻找集合S
if(s==S[i].s){ //若s在集合S中出现过
S[i].t++; //出现的次数加1
if(S[i].t>m) //若出现次数最多
m=S[i].t; //更新众数的重数
break;
}
}
if(i==c){ //若s在集合S中还未出现过
S[c].s=s; //将s添加到S中
S[c].t=1; //出现了1次
c++; //集合S中有c个元素
}
}
v=0x7fffffff;
for(i=0;i<c;i++){ //在集合S中寻找
if(S[i].t==m&&S[i].s<v) //最小的众数
v=S[i].s;
}
printf("%d\n%d\n",v,m);
return 0;
}
0.0分
1 人评分
1028浏览:825 |
台球碰撞 (C++代码)浏览:1103 |
C语言训练-数字母 (C语言代码)浏览:585 |
A+B for Input-Output Practice (III) (C语言代码)浏览:576 |
C语言训练-尼科彻斯定理 (C语言代码)浏览:469 |
WU-蓝桥杯算法提高VIP-交换Easy (C++代码)浏览:1119 |
WU-C语言程序设计教程(第三版)课后习题12.1 (C++代码)浏览:941 |
母牛的故事 (C语言代码)浏览:551 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:517 |
简单的a+b (C语言代码)浏览:488 |