PAT乙级1021

Posted another-7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT乙级1021相关的知识,希望对你有一定的参考价值。

1021 个位数统计 (15分)

题目地址:https://pintia.cn/problem-sets/994805260223102976/problems/994805300404535296

技术图片

输入格式

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

输出格式:

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

输入样例

100311

输出样例

0:2
1:3
3:1

我的理解

前面的N= 、、、是数学表达式,看到后面的我就明白什么意思了,统计字符串中数字0 ~ 9 出现的次数,并且按照0 ~ 9 的顺序进行输出。

代码段

#include <iostream>
using namespace std;
int main(){
    string N;
    cin >> N;
    int counter[10] = {0};
    int limit = N.length();
    for (int i = 0; i < limit; i++) {
        counter[N[i] - '0']++;
    }
    for (int i = 0; i < 10; i++) {
        if (counter[i] != 0) {
            // cout << i << ":" << counter[i] << endl;
            printf("%d:%d
", i, counter[i]);
        }
    }
    return 0;
}

更改过程

  1. 难得的一遍AC、、、
  2. 而且发现一个问题,为什么我电脑上之前测试的使用cout是比printf输出要快的,可是在PAT上提交测试printf是比较快的,难搞哦

以上是关于PAT乙级1021的主要内容,如果未能解决你的问题,请参考以下文章

PAT乙级1021

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

PAT——乙级1006:换个格式输出整数&乙级1021:个位数统计&乙级1031:查验身份证

PAT-乙级-1049 数列的片段和

PAT乙级1049 数列的片段和 (20 分)

PAT 乙级 1049 数列的片段和