这个算法 难度不高,主要就是考虑个位 十位 百位 出现的次数
/**
*@author zs
*@date 2019/12/28 17:47
*计算数字 k 在 0 到 n 中的出现的次数,k 可能是 0~9 的一个值
* 输入:
* 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)。
*/
public class Statistics {
public static void main(String[] args) {
int k=1;
int n=12;
int count=0;
for(int i=k;i<=n;i++){
int t=i;
if(i==0 && k==0){
count+=1;
}
while (t>0){
if(t%10==k){
count+=1;
}
t=t/10;
}
}
System.out.println(count);
}
}
本文介绍了一个简单的算法,用于计算指定数字k在从0到n的整数范围内出现的总次数。通过遍历每个数字并检查其每一位是否等于k来实现,特别注意了当k为0时的特殊情况。
2432

被折叠的 条评论
为什么被折叠?



