输入格式:
每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。
输出格式:
对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。
输入样例:
100311
输出样例:
0:2
1:3
3:1
代码:
#include<stdio.h>
#include<string.h>
int main(){
char n[1005];
if(scanf("%s",n)){
int i,temp;
int a[10]={0}; //哈希算法,用来存储每位数字出现的次数,初始化全置为0
for(i=0;i<strlen(n);i++){
if(n[i]<48||n[i]>57){
printf("n error!\n");
return 0;
}
temp=n[i]-48;
//printf("%d ",temp);
a[temp]++; //计数出现的次数
}
for(i=0;i<10;i++){
if(a[i]!=0)
printf("%d:%d\n",i,a[i]);
}
}
return 0;
}