美文网首页
vijos的训练计划题解--1.1 计数问题

vijos的训练计划题解--1.1 计数问题

作者: 硬派 | 来源:发表于2018-08-15 10:09 被阅读0次

    1.1 计数问题


    问题描述

    试计算在区间 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。

    来源

    NOIP 2013 普及组


    题目分析:

    这一题难度不大,可以利用整数的特点以及字符串的特点来做。

    1.利用整数的特点:循环取整除数,并判断

    2.直接将数字输入为字符串,然后判断子串中某数字出现的次数


    题解(C语言):

    #includeint main()

    {

    int i,n,x,k=0,j;

    scanf("%d %d",&n,&x);

    for(i=1;i<=n;i++)

    {

    j=i;

    while(j)

    {

    if(j%10==x)

    k++;

    j=j/10;

    }

    }

    printf("%d",k);

    return 0;

    }

    相关文章

      网友评论

          本文标题:vijos的训练计划题解--1.1 计数问题

          本文链接:https://www.haomeiwen.com/subject/ouyibftx.html