P1980 计数问题

扫码查看

P1980 计数问题


题目描述
试计算在区间 1 到 n的所有整数中,数字x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1到11中,即在 1,2,3,4,5,6,7,8,9,10,11,数字 1 出现了 4次。

输入格式
2个整数n,x之间用一个空格隔开。

输出格式
11个整数,表示x出现的次数。

输入输出样例
输入
11 1
输出
4
说明/提示
对于100%的数据,1≤ n ≤ 1,000,000,0 ≤ x ≤ 9

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3
 4 int main()
 5 {
 6     /*思路:
 7         1:输入n 代表1~n;输入x :0~9
 8         2:对1~n的每位数字,进行处理,出现x ,sum++
 9     */
10     int n,x;
11     cin>>n>>x;
12     int sum=0;//出现个数为1
13     int data;//临时遍历
14     for(int i=1;i<=n;i++){
15         data=i;
16         while(1){
17             if(data==0) break;
18             if(data%10==x){
19                 sum++;
20             }
21             data/=10;
22         }
23     }
24     cout<<sum<<endl;
25     return 0;
26 }
12-19 14:29
查看更多