华师一附中OI组

标题: 计数型问题大楼 [打印本页]

作者: admin    时间: 2018-5-17 12:50
标题: 计数型问题大楼
计数型问题

作者: WJL    时间: 2018-5-27 23:34
p1980
试计算在区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1

到 11 中,即在 1、2、3、4、5、6、7、8、9、10、11 中,数字 1 出现了 4 次。

输入输出格式

输入格式:
输入文件名为 count.in。

输入共 1 行,包含 2 个整数 n、x,之间用一个空格隔开。

输出格式:
输出文件名为 count.out。

输出共 1 行,包含一个整数,表示 x 出现的次数。

输入输出样例

输入样例#1: 复制
11 1
输出样例#1: 复制
4
说明

对于 100%的数据,1≤ n ≤ 1,000,000,0 ≤ x ≤ 9。
作者: WJL    时间: 2018-5-27 23:34
  1. #include<iostream>
  2. using namespace std;
  3. long long n,i,x,y,z,t=0;
  4. int main()
  5. {

  6.     cin>>n>>x;
  7.     for(i=1;i<=n;i++)
  8.        {
  9.            
  10.         y=i;
  11.         while(y!=0)
  12.         {
  13.             z=y%10;
  14.             y=y/10;
  15.             if(z==x)
  16.                 t++;
  17.         }}

  18.     cout<<t<<endl;
  19.     return 0;
  20. }
复制代码

作者: zbtrs    时间: 2018-6-8 08:59
可以选择数位dp




欢迎光临 华师一附中OI组 (http://hsyit.cn/) Powered by Discuz! X3.2