描述
计算数字k在0到n中的出现的次数,k可能是0~9的一个值代码
public class Solution {
/*
* @param : An integer
* @param : An integer
* @return: An integer denote the count of digit k in 1..n
*/
public int digitCounts(int k, int n) {
// write your code here
int cnt = 0;
for(int i = k; i <= n; i++) {
cnt += singleCount(i, k);
}
return cnt;
}
public int singleCount(int i, int k) {
if(i == 0 && k == 0) {
return 1;
}
int cnt = 0;
while(i > 0) {
if(i % 10 == k) {
cnt++;
}
i /= 10;
}
return cnt;
}
};
- 分析
算法较为简单,注意代码实现即可