技术栈

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

Ddddddd_1582024-07-18 20:52

题目:

题解:

cpp 复制代码
class Solution {
public:
    int countDigitOne(int n) {
        // mulk 表示 10^k
        // 在下面的代码中,可以发现 k 并没有被直接使用到(都是使用 10^k)
        // 但为了让代码看起来更加直观,这里保留了 k
        long long mulk = 1;
        int ans = 0;
        for (int k = 0; n >= mulk; ++k) {
            ans += (n / (mulk * 10)) * mulk + min(max(n % (mulk * 10) - mulk + 1, 0LL), mulk);
            mulk *= 10;
        }
        return ans;
    }
};
上一篇:【jvm】字符串常量池问题
下一篇:Java核心篇之JVM探秘:对象创建与内存分配机制
相关推荐
yyds_yyd_10086
13 小时前
3731. 找出缺失的元素(2026.08.04)
c++·leetcode
呱呱巨基
14 小时前
CMake基础
linux·c++·笔记·学习
lueluelue47
1 天前
LeetCode:链表
算法·leetcode·链表
橘子汽水168
1 天前
Leetcode 23,543合并K个升序链表,二叉树的直径
算法·leetcode·链表
Tri_Function
1 天前
动态规划DP1(c++)
c++
清水迎朝阳
1 天前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
Re.不晚
1 天前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展
青山木
1 天前
Hot 100 --- 搜索插入位置
java·数据结构·算法·leetcode
再卷也是菜
1 天前
C++17(下)
c++
alexwang211
1 天前
HDU 4348 详细题解
c++·算法·题解·hdu·主席树·可持久化数据结构·可持久化线段树
热门推荐
01如何新建文件夹? 电脑新建文件夹的4种方法02GitHub 镜像站点03国内可直接用、免费额度/永久免费的大模型API清单(含 SiliconFlow、火山、阿里、智谱、百度、Kimi、DeepSeek、DMXAPI 等)04微信历史版本含下载地址( Windows PC | 安卓 | MAC )及设置微信不更新05Agnes AI 免费 API 接入指南:文本、生图、生视频,一套接口全免费06AI 编程 IDE 全景解析 2026:Agent 全面接管开发链路072026 国产 AI 大模型横评:DeepSeek、通义千问、Kimi、文心一言、星火、豆包谁更能打?082026年7月AI圈大地震:GPT-5.6被政府限制、Claude入驻Slack、Anthropic自研芯片09历年考研数学一、数学二、数学三真题试卷及答案PDF1000 Debian字符界面如何支持中文