3. 统计数字

描述

计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值。

样例

样例 1:

输入:
k = 1, n = 1
输出:
1
解释:
在 [0, 1] 中,我们发现 1 出现了 1 次 (1)。

样例 2:

输入:
k = 1, n = 12
输出:
5
解释:
在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 中,我们发现 1 出现了 5 次 (1, 10, 11, 12)(注意11中有两个1)。

题解:

class Solution {
 public:
    // param k : description of k
    // param n : description of n
    // return ans a integer
    int digitCounts(int k, int n) {
        int count = 0;
        if (k == 0) {
            count = 1;
        }
        for (int i = 1; i <= n; i++) {
            int number = i;
            while (number > 0) {
                if (number % 10 == k) {
                    count += 1;
                } 
                number /= 10;
            }
        }
        
        return count;
    }
};
原文地址:https://www.cnblogs.com/deepend/p/14199280.html