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的个数的主要内容,如果未能解决你的问题,请参考以下文章