洛谷p1554
梦中的统计
题目背景
Bessie 处于半梦半醒的状态。过了一会儿,她意识到她在数数,不能入睡。
题目描述
Bessie 的大脑反应灵敏,仿佛真实地看到了她数过的一个又一个数。她开始注意每一个数码( 0 … 9 0 \ldots 9 0…9):每一个数码在计数的过程中出现过多少次?
给出两个整数 M M M 和 N N N,求在序列 [ M , M + 1 , M + 2 , … , N − 1 , N ] [M, M + 1, M + 2, \ldots, N - 1, N] [M,M+1,M+2,…,N−1,N] 中每一个数码出现了多少次。
输入格式
第 1 1 1 行: 两个用空格分开的整数 M M M 和 N N N。
输出格式
第 1 1 1 行: 十个用空格分开的整数,分别表示数码 0 … 9 0 \ldots 9 0…9 在序列中出现的次数。
样例 #1
样例输入 #1
129 137
样例输出 #1
1 10 2 9 1 1 1 1 0 1
提示
数据保证, 1 ≤ M ≤ N ≤ 2 × 1 0 9 1 \leq M \leq N \leq 2 \times 10^9 1≤M≤N≤2×109, N − M ≤ 5 × 1 0 5 N-M \leq 5 \times 10^5 N−M≤5×105。
题解
#include <bits/stdc++.h>/
using namespace std;
int js[11],n,m;
int main()
{
cin>>n>>m;
for(int i=n;i<=m;i++){
for(int tmp=i;tmp;tmp/=10){
js[tmp%10]++;
}
}
for(int i=0;i<=9;i++){
cout<<js[i]<<" ";
}
}1