美文网首页
LintCode:3 · 统计数字

LintCode:3 · 统计数字

作者: alex很累 | 来源:发表于2022-01-17 22:51 被阅读0次

问题描述

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

样例

输入:
k = 1
n = 12

输出:
5

解释:
在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 中,1、10、11、12 中均出现了 1,其中 11 中出现了 2 次 1,故1出现 5 次。

解题思路

直接暴力解题,写一个循环,对循环中每个数进行拆分(1:运用算数拆数;2:转成字符串再拆成byte数组),判断下是不是等于k。

代码示例(JAVA)

public class Solution {
    /**
     * @param k: An integer
     * @param n: An integer
     * @return: An integer denote the count of digit k in 1..n
     */
    public int digitCounts(int k, int n) {
        // n比k小,直接结束
        if (n < k) {
            return 0;
        }
        
        // 循环第一个匹配上的必定是=k,直接从k+1开始
        int result = 1;
        for (int i = k + 1; i <= n; i++) {
            for (int j = i; j > 0; j = j / 10) {
                if (j % 10 == k) {
                    result++;
                }
            }
        }

        return result;
    }
}

相关文章

  • LintCode:3 · 统计数字

    问题描述 给定一个数字k,计算 k 在 0 到 n 中出现的次数,k 可能是 0 到 9 的一个值。 样例 解题思...

  • 3. 统计数字(lintcode)

    题目: 计算数字k在0到n中的出现的次数,k可能是0~9的一个值 样例: 例如n=12,k=1,在 [0, 1, ...

  • lintCode题解(3)

    标签(空格分隔): lintCode 题目: 统计数字 描述: 计算数字k在0到n中的出现的次数,k可能是0~9的...

  • The facts

    vocabulary 1 statistics 统计数字 2 lead to 通往……,导致…… 3 exact ...

  • 3、统计数字

    题目描述 计算数字k在0到n中的出现的次数,k可能是0~9的一个值 思路 对每一个0到n的数字i,将i转化为Str...

  • LintCode 59. 3Sum Closest

    原题 LintCode 59. 3Sum Closest Description Given an array S...

  • LintCode 57. 3Sum

    原题 LintCode 57. 3Sum Description Given an array S of n in...

  • 程序员常用的刷题网站

    1、Lintcode Lintcode.com——LintCode网站是国内较大的在线编程&测评网站。此网站提供各...

  • Singleton

    lintcode: http://lintcode.com/en/problem/singleton/ Java ...

  • 二叉树非递归遍历——已通过LintCode

    先序遍历 LintCode题目链接 中序遍历 LintCode题目链接 后序遍历 LintCode题目链接由于在L...

网友评论

      本文标题:LintCode:3 · 统计数字

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