leetcode 43. 1~n整数中1出现的次数

DeepSeek+Dify实战:零代码构建智能SQL生成器 本文详细介绍了如何利用DeepSeek和Dify零代码构建智能SQL生成器,帮助非技术人员通过自然语言查询数据库。文章涵盖从数据准备、知识库设计到Agent配置的全流程,并提供了优化技巧和实际应用案例,显著提升团队数据查询效率。 阅读详情

题目描述:
输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。
例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。

示例 1:
输入:n = 12
输出:5
示例 2:
输入:n = 13
输出:6

限制:1 <= n < 2^31

思路: 这是一道数学题,主要从数学的思想解决,主要就是一次判断数的每一位可能出现1的次数,再把他们加起来;
每一位可能出现1的次数需要找规律,具体参考的题解链接

class Solution:
    def countDigitOne(self, n: int) -> int:
        res, digit = 0, 1
        high, low, cur = n // 10, 0, n % 10
        while high != 0 or cur != 0:  # 当 high 和 cur 同时为 0 时,说明已经越过最高位,因此跳出
            if cur == 0:
                res += high * digit
            elif cur == 1:
                res += high * digit + low + 1
            else:
                res += (high+1) * digit
            low += cur * digit  # 将 cur 加入 low ,组成下轮 low
            cur = high % 10  # 下轮 cur 是本轮 high 的最低位
            high = high // 10  # 将本轮 high 最低位删除,得到下轮 high
            digit *= 10  # 位因子每轮 × 10
        return res
【即插即用模块】Transformer篇 | CVPR 2025 | D2T:双域特征融合,完美适配缺陷检测/小目标检测和分割等频域细节敏感的任务! 本文提出了一种基于小波和原型增强的双域Transformer(WPFormer)用于像素级表面缺陷检测。该模型通过Dual-domain Transformer (D2T)模块融合频域和空间域特征:小波增强交叉注意力(WCA)分解高低频特征并加权平衡,增强缺陷细节捕捉;原型引导注意力(PCA)生成全局原型向量强化关键信息聚合。实验表明,该模块在缺陷检测任务中性能优于现有方法,通过频域细节增强和全局依赖建模有效提升了复杂场景下的检测效果。代码已开源,适用于对频域敏感的目标检测和分割任务。 阅读详情

相关推荐

实战指南:彻底清除TIA Portal卸载后遗留的SQL Server WinCC实例

本文详细介绍了如何彻底清除TIA Portal卸载后遗留的SQL Server WinCC实例,解决重新安装时的冲突问题。通过控制面板排查、注册表验证、安全卸载操作流程和注册表深度清理等步骤,确保完全移除残留组件,避免系统崩溃。文章还提供了安装环境重建策略和预防措施,帮助工程师高效管理西门子自动化软件。

weixin_30482181的博客 405

leetcode-1~n 整数中 1 出现的次数(清晰图解)

输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 限制: 1 <= n < 2^31 #include<iostream> #include<string> #include<vector> #include<algorithm> #include<

qq_33287871的博客 1412

ICCompiler II实战:从NDM生成到APR流程的完整避坑指南

本文是一份针对ICCompiler II(ICC II)后端物理实现流程的实战避坑指南。文章详细解析了从NDM库生成、设计初始化、布局规划到时钟树综合与布线的完整APR流程,重点分享了各环节的常见陷阱、精细化配置命令与调试经验,旨在帮助工程师高效达成PPA目标,确保设计一次成功。

p4q5r6s7t的博客 531

《LeetCode笔记59》:1~n整数中1出现的次数

题目: 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 限制: 1 <= n <2^31 来源:力扣(LeetCode) 链接:https://leetcode-cn...

xin3475的博客 252

深入解析Vivado FIFO的Standard与FWFT模式:性能对比与应用场景

本文深入解析了Vivado FIFO的Standard与FWFT两种工作模式的核心差异。通过对比数据就绪时机、读延迟、控制逻辑和有效深度等关键特性,并结合图像处理、数据包转发等典型应用场景,为FPGA设计者提供了清晰的选择依据和实战配置指南,帮助优化数据流性能与设计效率。

weixin_29219189的博客 254

保姆级教程:Win10/Win11系统下ArcGIS 10.2中文版完整安装与破解(含License Manager启动失败解决方案)

本文提供Windows 10/11系统下ArcGIS 10.2中文版的完整安装与破解教程,重点解决License Manager启动失败等常见问题。从安装准备、破解文件处理到最终配置验证,详细指导用户完成每一步操作,确保软件正常运行。特别针对主机名修改、端口占用等疑难问题提供专业解决方案。

weixin_29596051的博客 549

Leetcode 233 从1到n整数中1出现的次数

从1到n整数中1出现的次数 Leetcode 233 剑指offer33 class Solution { public: int countDigitOne(int n) { int ones = 0; for (long long m = 1; m &lt;= n; m *= 10) ones += (n/m + 8) / 10 * m +...

behboyhiex的博客 917

Materials - UE5中的PivotPainter

可以使用3DS Max Script中的脚本(Pivot Painter)对模型进行处理,让每个Element都有自己的Pivot Point,来方便控制和制作一些特殊的顶点动画效果;

GT的虚幻引擎文档 1288

LeetCode—剑指Offer:1~n整数中1出现的次数(规律)

1~n整数中1出现的次数(中等) 2020年9月4日 题目来源:力扣 解题 看路飞大佬的题解理解,这个规律一理解就好做了 class Solution { public int countDigitOne(int n) { //初始化各个参数 //高位 int high=n/10; //当前位 int cur=n%10; //低位 int low=0; //位数

学海无涯乐作舟 361

Monocle2拟时轨迹基因模块的GO富集解析

本文详细解析了如何对Monocle2拟时分析中得到的基因表达模块进行GO富集分析。通过从热图对象中提取聚类模块,并利用clusterProfiler等工具进行功能注释,将抽象的基因表达时序模式转化为可解释的生物学功能主题,如免疫应答、细胞外基质组织等,从而深入理解细胞命运转变的驱动机制。

gpt4scribbler的博客 500

华为eNSP Pro实战:NE/CE设备SSH远程配置避坑指南

本文针对华为eNSP Pro用户在模拟多台NE路由器或CE交换机时遇到的浏览器卡顿问题,提供了详细的SSH远程配置避坑指南。通过对比浏览器与SSH客户端的资源占用和操作体验,文章详细阐述了为NE和CE设备配置SSH服务的关键步骤、命令差异及常见错误排查方法,旨在帮助用户提升实验效率,实现稳定高效的远程管理。

weixin_29196891的博客 223

[分析总结:leetcode-Number of Digit One]寻找整数1到n之间所有数字中1出现的次数

leetcode原题链接:https://leetcode.com/problems/number-of-digit-one/ 题目描述: 要求寻找整数1到n之间所有数字中,1出现的次数。如给定数字15,那么1到15之间出现1的数字为:1、10、11、12、13、14、15,共出现8次。 方法一: 我们可以用最简单的办法先尝试一下,遍历1到n中间的每个整数,对每个整数从

八爪鱼的家 2414

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之EcuM模块配置详解(上)

RH850从0搭建Autosar开发环境【3X】- Davinci Configurator之EcuM模块配置详解(上)

weixin_42412049的博客 1015

剑指 Offer 43. 1~n 整数中 1 出现的次数 - LeetCode(力扣)

剑指 Offer 43. 1~n 整数中 1 出现的次数 - LeetCode(力扣)

Onwaier的博客 452

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Leetcode 剑指 Offer 43. 1~n 整数中 1 出现的次数

Leetcode 剑指 Offer 43. 1~n 整数中 1 出现的次数 题目 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 限制: 1 <= n < 2^31 思路 我们要明确出现1的次数 = 每个位上面出现1的次数的和 现在我们以十位为例子, 说明下面的3种情况: 十位是1, 比

weixin_43891775的博客 184

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Leetcode43 1~n 整数中 1 出现的次数

求出1 ~ 13的整数中1出现的次数,并算出100 ~ 1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)。 解题思路 将 1 ~ n 的个位、十位、百位、…的 1出现次数相加,即为 1 出现的总次数。 某位中 1 出现次数的计算方法: 根据当前位 cur 值的不同,分为以下三种情况: 当 c

MARK19960120的博客 346

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

剑指 Offer 43. 1~n 整数中 1 出现的次数 leetcode233. 数字 1 的个数(没做)

lardoris928的博客 148

【leetcode】43.1~n整数中1出现的次数

【题目】1~n整数中1出现的次数 原题链接 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 【限制】 1 <= n < 2^31 1.暴力法 【思想】暴力解法就是遍历一遍每个数字,然后把每个数字中 1 的数目加起来。(会超时)。 class Solution { int count(int

海盗船长y的博客 454

LeetCode 剑指 Offer 43. 1~n 整数中 1 出现的次数

1.题目 示例: 。 来源:力扣(LeetCode) 链接: 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 2.题解 。 时间复杂度: 空间复杂度:

HarvestWu的博客 582

leetcode 剑指 Offer 43. 1~n整数中1出现的次数

剑指 Offer 43. 1~n整数中1出现的次数 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 限制: 1 <= n < 2^31 暴力操作不可取,直接超时 class Solution: def countDigitOne(self, n: int) -> int:

Qin_酱的博客 268

力扣 剑指 Offer 43. 1~n整数中1出现的次数 规律

https://leetcode-cn.com/problems/1nzheng-shu-zhong-1chu-xian-de-ci-shu-lcof/ 思路:应该算是找规律吧,看了别人的题解才会做… class Solution { public: int countDigitOne(int n) { long long high=n/10,cur=n%10,low=0,digit=1,ans=0; while(high||cur){

xiji333的博客 203

【LeetCode】剑指 Offer 43. 1~n 整数中 1 出现的次数

原题链接戳这⬅️ 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例1: 输入:n = 12 输出:5 示例2: 输入:n = 13 输出:6 解题思路 首先,将问题转化为求解 1~n1~n1~n 这 nnn 个整数中,第 iii 位上出现 111 的次数,即当第 iii 位取值为 111 时,求解存在多少个 <n<n<n 的不同整数。则,依次对个位、十位、百位… 求

Be Quick & Clever & Lucky 341

【LeetCode】面试题43. 1~n整数中1出现的次数(JAVA)

原题地址:https://leetcode-cn.com/problems/1nzheng-shu-zhong-1chu-xian-de-ci-shu-lcof/ 题目描述: 解题方案: 参考了题解,自己虽然也能想出来但是思路很乱。递归的话返回值是把n分块考虑了。分为除去最高位后面的部分和加上最高位的部分,再加上最高位,分类讨论。 代码: class Solution { public ...

rabbitsockx的博客 227

剑指 Offer 43. 1~n整数中1出现的次数 - leetcode 剑指offer系列

题目难度: 中等 原题链接 今天继续更新剑指 offer 系列, 老样子晚上 6 点 45 分准时更新公众号 每日精选算法题, 大家记得关注哦~ 另外在公众号里回复 offer 就能看到剑指 offer 系列当前连载的所有文章了 题目描述 输入一个整数 n ,求 1 ~ n 这 n 个整数的十进制表示中 1 出现的次数。 例如,输入 12,1 ~ 12 这些整数中包含 1 的数字有 1、10、11 和 12,1 一共出现了 5 次。 1 <= n < 2^31 题目样例 示例 .

随便发挥的博客 301

[LeetCode](面试题43)1~n整数中1出现的次数

题目 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。 示例 1: 输入:n = 12 输出:5 示例 2: 输入:n = 13 输出:6 限制: 1 <= n < 2^31 解题思路 参考K神思路 面试题43. 1~n 整数中 1 出现的次数 代码 class Solution { public int countDigitOne(int n) { in

zaker123的博客 419

[leetCode]剑指 Offer 43. 1~n整数中1出现的次数

递归  直观思路是遍历每一个数字,对每一个数字采用“%”“/”的方法取个位判断是否为1然后累加。由于数字n有O(logn)为所以时间复杂度为O(nlogn)。应该考虑更快的算法。  假设输入的数字n为21345,可以把它分为两部分: 1~1345 1346~21345 先来分析1345~21345这部分。从万位开始万位出现1的次数为10000,因为可取10000 ~ 19999,1出现了10000次。剩余4位1出现的次数又是多少呢?把1345 ~ 21345 再分为两部分: 1346 ~ 11345.

Warms的博客 144
上一篇: leetcode 剑指offer 14:剪绳子
下一篇: leetcode 剑指offer 44:数字序列中的某一位数字
coding_diamond
博客等级 码龄8年 8粉丝 131原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值