题解 | #[NOIP2013]记数问题#

[NOIP2013]记数问题

https://www.nowcoder.com/practice/28b2d9f2bf2c48de94a1297ed90e1732

描述

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

#include <stdio.h>
int main()
{
    int n, x;
    scanf("%d%d",&n,&x);

    int count = 0;
    int i, j;
    for(i = 1;i <= n;i++)   //范围[1,n]
    {
        for(j = i;j > 0;j /= 10)    //不为0递缩
        {
            if ((j%10) == x)    //取余得数位值,判断与x是否相等
            {
                count++;    //计数
            }
        }
    }

    printf("%d",count);
    return 0;
}

全部评论

相关推荐

06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务