[lintcode medium] digit counts

Digit Counts

Count the number of k's between 0 and n. k can be 0 - 9.

Example

if n=12, k=1 in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], we have FIVE 1's (1, 10, 11, 12)

class Solution {
    /*
     * param k : As description.
     * param n : As description.
     * return: An integer denote the count of digit k in 1..n
     */
    public int digitCounts(int k, int n) {
        // write your code here
        int count=1;
        if(n<10) return count;
        for(int i=10;i<=n;i++)
        {
            int num=i;
            while(num>0)
            {
              int digit=num%10;
              num=num/10;
              if(digit==k)
              {
                 count++;
              }
            }
        }
        return count;
    }
};

 

posted on 2015-12-19 03:40  一心一念  阅读(219)  评论(0编辑  收藏  举报

导航