PAT 乙级 1021 个位数统计 (15分)

我的个人网站 http://www.cheese.ren/

博客来源 http://www.cheese.ren/blog/blog/229

欢迎交换友链 :-)


1021 个位数统计 (15分)

给定一个 k 位整数 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−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 <bits/stdc++.h>

using namespace std;

int main() {
    char str[1000];
    while (cin >> str) {
        int index[10]={0};
        for (int i=0; i<strlen(str); i++)
            index[str[i] - '0']++;
        for (int i=0; i<10; i++)
            if (index[i] != 0)
                printf("%d:%d\n", i, index[i]);
        memset(str, 0, 1000);
    }
    return 0;
}

 

相关推荐
©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页