LeetCode:233.数字1的个数

Posted 南岸青栀*

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode:233.数字1的个数相关的知识,希望对你有一定的参考价值。

233. 数字 1 的个数

在这里插入图片描述

思路:
固定其中一位为1,剩下的进行排练组合。
在这里插入图片描述

class Solution:
    def countDigitOne(self, n: int) -> int:
        base = 1
        res = 0
        while base <= n:
            a = n // base
            b = n % base
            cur = a % 10
            a //= 10
            if cur > 1: res += (a + 1) * base
            elif cur == 1: res += a * base + b + 1
            else: res += a * base
            base *= 10
        return res

在这里插入图片描述

以上是关于LeetCode:233.数字1的个数的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 233 数字1的个数[数学 找规律] HERODING的LeetCode之路

Leetcode 233 Number of Digit One

LeetCode233. 数字1的个数(数位dp)/1583. 统计不开心的朋友(模拟)/112. 路径总和 / 230. 二叉搜索树中第K小的元素 /968. 监控二叉树(树形dp)

[LeetCode]233 Number of Digit One(数位DP)

LeetCode-233 Number of Digit One

LeetCode233. Number of Digit One