求一批整数中出现次数最多的个位数字

求一批整数中出现次数最多的个位数字

#include<iostream>
using namespace std;
int main(){
	int n,a[1010];
	cin>>n;
	for(int i=0;i<n;i++) cin>>a[i];
	int b[10]={0};
	for(int i=0;i<n;i++){
		if(a[i]==0) b[0]++;
		else{
			while(a[i]){
				b[a[i]%10]++;
				a[i]/=10;
			}
		}
	}
	int ma=0,num=0;
	for(int i=0;i<10;i++){
		if(b[i]>ma) ma=b[i];
	}
	for(int i=0;i<10;i++){
		if(b[i]==ma) num++;
	}
	printf("%d: ",ma);
	for(int i=0;i<10;i++){
		if(num-1 && b[i]==ma){cout<<i<<' ';num--;}
		else if(num-1==0 && b[i]==ma) cout<<i<<endl;
	}
	return 0;
}
上一篇:LeetCode 1340. 跳跃游戏 V(dp)


下一篇:1506D Epic Transformation(思维、贪心)