[L1-003]个位数统计 | PAT GPLT团体程序设计天梯赛

Description

给定一个 k 位整数 N ,请编写程序统计每种不同的个位数字出现的次数。例如:给定 N = 100311,则有2个0,3个1,和1个3。

Input

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

Output

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

Sample Input

100311

Sample Output

0:2
1:3
3:1

Hint

当字符串进行处理。

题解

#include "cstdio"
#include "cstring"
#include "cstdlib"
#include "iostream"
#include "cmath"
using namespace std;
int main(int argc, char const *argv[])
{
  string k;
  cin >> k;
  int arr[10];
  memset(arr,0,sizeof(arr));
  for (int i = 0; i < k.length(); i++)
    arr[k[i]-'0']++;
  for (int i = 0; i < 10; i++)
    if (arr[i] > 0)
      printf("%d:%d\n", i, arr[i]);
  return 0;
}

CC BY-SA 4.0 [L1-003]个位数统计 | PAT GPLT团体程序设计天梯赛 by 小小泥娃 is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.