#include <stdio.h>

int main() {
    int n;
    scanf("%d", &n);

    int count[10] = {0}; // 用来记录每个数字出现的次数

    for (int i = 1; i <= n; i++) {
        int num = i;
        while (num > 0) {
            int digit = num % 10;
            count[digit]++;
            num /= 10;
        }
    }

    for (int i = 0; i < 10; i++) {
        printf("%d\n", count[i]);
    }

    return 0;
}

输入样例: 10

输出样例: 1 7 2 1 1 1 1 1 1 1

一本书的页码从自然数 1 开始顺序编码直到自然数 n。书的页码按照通常的习惯编排每个页码都不含多余的前导数字 0。例如第 6 页用数字 6 表示而不是 06 或 006 等。数字计数问题要求对给定书的总页码 n计算出书的全部页码中分别用到多少次数字 012…9。输入给定表示书的总页码的 10 进制整数 n 1≤n≤10 9 。编程计算书的全部页码中分别用到多少次数字 012…9。输出输出共有 1

原文地址: http://www.cveoy.top/t/topic/jaO9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录