Vijos 1848题:记数问题

来源:互联网 发布:软件市场分析 编辑:程序博客网 时间:2024/06/11 10:49

描述

试计算在区间 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 出现的次数。

样例1

样例输入1

11 1

样例输出1

4

限制

每个测试点1s。

提示

对于 100%的数据,1≤ n ≤ 1,000,000,0 ≤ x ≤ 9。

来源

NOIP2013普及组


#include<iostream>using namespace std;int main(){    int n, x, ans = 0;    cin >> n >> x;    for (int i = 1; i <= n; i++)    {        int s = i;        while (s > 0)        {            if (s % 10 == x)                ans++;            s /= 10;        }    }    cout << ans << endl;    return 0;}
0 0
原创粉丝点击