题目描述
试计算在区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1 到 11 中,即在 1、2、3、4、5、6、7、8、9、10、11 中,数字 1 出现了 4 次。
输入
输入共 1 行,包含 2 个整数 n、x,之间用一个空格隔开。
输出
输出共 1 行,包含一个整数,表示 x 出现的次数。
样例输入
11 1
样例输出
4
提示
【数据说明】
对于 100%的数据,1≤ n ≤ 1,000,000,0 ≤ x ≤ 9。
思路
暴力吧。。。。。原谅我只是一只 菜鸡
#include<bits/stdc++.h>
using namespace std;
int a[10];
int fact(int n){
while(n){
a[n%10]++;
n=n/10;
}
}
int main(){
for(int i=0;i<=9;i++){
a[i]=0;
}
int n;
int k;
cin>>n;
cin>>k;
for(int i=0;i<=n;i++){
fact(i);
}
cout<<a[k]<<endl;
return 0;
}