Python | Leetcode Python题解之第233题数字1的个数

题目:

题解:

class Solution:
    def countDigitOne(self, n: int) -> int:
        # mulk 表示 10^k
        # 在下面的代码中,可以发现 k 并没有被直接使用到(都是使用 10^k)
        # 但为了让代码看起来更加直观,这里保留了 k
        k, mulk = 0, 1
        ans = 0
        while n >= mulk:
            ans += (n // (mulk * 10)) * mulk + min(max(n % (mulk * 10) - mulk + 1, 0), mulk)
            k += 1
            mulk *= 10
        return ans

相关推荐

  1. [LeetCode][233]数字 1 个数

    2024-07-14 08:16:02       41 阅读
  2. 力扣233数字1个数”

    2024-07-14 08:16:02       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-14 08:16:02       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-14 08:16:02       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-14 08:16:02       58 阅读
  4. Python语言-面向对象

    2024-07-14 08:16:02       69 阅读

热门阅读

  1. 特斯拉的选择:.NET技术栈的工业级魅力

    2024-07-14 08:16:02       20 阅读
  2. 1、ASP安全

    2024-07-14 08:16:02       22 阅读
  3. 数据结构第24节 二分查找

    2024-07-14 08:16:02       20 阅读
  4. QComboBox

    2024-07-14 08:16:02       21 阅读
  5. 【PHP】Symfony框架

    2024-07-14 08:16:02       31 阅读
  6. qt 可以滚动区域实验举例

    2024-07-14 08:16:02       25 阅读
  7. win10 cpu 下使用Xinference来进行大模型的推理测试

    2024-07-14 08:16:02       24 阅读
  8. jenkins

    jenkins

    2024-07-14 08:16:02      21 阅读
  9. SQL注入安全漏洞与防御策略

    2024-07-14 08:16:02       29 阅读
  10. MocoInverse接口使用教程

    2024-07-14 08:16:02       33 阅读
  11. python datetime库与时间戳timestamp的转换

    2024-07-14 08:16:02       22 阅读