PAT (Basic Level) Practice (中文) 1021 个位数统计 (15 分)

PAT (Basic Level) Practice (中文)

公告

原PAT网站用户可在 https://patest.cn/bind_old_pat_user 页面绑定至拼题A账号。绑定后,原PAT网站的提交将被合并至拼题A网站用户的对应题目集中。

返回

1021 个位数统计 (15 分)

给定一个 k 位整数 N=d​k−1​​10​k−1​​+⋯+d​1​​10​1​​+d​0​​ (0≤d​i​​≤9, i=0,⋯,k−1, d​k−1​​>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。

输入格式:

每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。

输出格式:

对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。

输入样例:

100311

输出样例:

 

0:2
1:3
3:1

 

 

#include<iostream>
#include<cstring>
using namespace std;
int main(void){
	char str[1009] ;
    int  a[10];
	while( scanf(" %s",str)!=EOF){
	  memset(a,0,sizeof(a));
      for( int i=0;i<strlen(str);i++){
      	   a[ str[i] - '0']++;
	  }		
	  for( int i=0;i<10;i++){
	  	   if( a[i] )
	  	   printf("%d:%d\n",i,a[i]);
	  }	
	}
	
	
	return 0;
}

 

上一篇:practice in Shell programming generally


下一篇:DAY 5 Practice