当前位置: 首页 > news >正文

LeetCode 1523.在区间范围内统计奇数数目:两种方法O(1)算

【LetMeFly】1523.在区间范围内统计奇数数目:两种方法O(1)算

力扣题目链接:https://leetcode.cn/problems/count-odd-numbers-in-an-interval-range/

给你两个非负整数lowhigh。请你返回lowhigh之间(包括二者)奇数的数目。

示例 1:

输入:low = 3, high = 7输出:3解释:3 到 7 之间奇数数字为 [3,5,7] 。

示例 2:

输入:low = 8, high = 10输出:1解释:8 到 10 之间奇数数字为 [9] 。

提示:

  • 0 <= low <= high <= 10^9

解题方法一:思考容易写着麻烦点

low和high都是偶数的示例 2:low = 8, high = 10,中间共有几个奇数?

答案是10 − 8 2 \frac{10-8}22108个。

如果low是奇数,那么我们令low-1;如果high是奇数,那么我们就令high+1就好了。

  • 时间复杂度O ( 1 ) O(1)O(1)
  • 空间复杂度O ( 1 ) O(1)O(1)

AC代码

C++
/* * @LastEditTime: 2026-02-19 17:39:31 */classSolution{public:intcountOdds(intlow,inthigh){if(low%2){low--;}if(high%2){high++;}return(high-low)>>1;}};
Python
''' LastEditTime: 2026-02-19 18:00:11 '''classSolution:defcountOdds(self,low:int,high:int)->int:iflow%2:low-=1ifhigh%2:high+=1return(high-low)//2
Go
/* * @LastEditTime: 2026-02-19 18:02:40 */packagemainfunccountOdds(lowint,highint)int{iflow%2==1{low--}ifhigh%2==1{high++}return(high-low)/2}

解题方法二:思考麻烦点写着容易

不论一个数的奇偶性:

  • [ 1 , l o w ) [1, low)[1,low)共有几个奇数?答案是⌊ l o w 2 ⌋ \lfloor\frac{low}2\rfloor2low个;
  • [ 1 , h i g h ] [1, high][1,high]共有几个奇数?答案是⌊ h i g h + 1 2 ⌋ \lfloor\frac{high+1}2\rfloor2high+1个。

那么[ l o w , h i g h ] [low, high][low,high]共有几个奇数?[ 1 , h i g h ] − [ 1 , l o w ) [1, high] - [1, low)[1,high][1,low)即为所得。

  • 时间复杂度O ( 1 ) O(1)O(1)
  • 空间复杂度O ( 1 ) O(1)O(1)

AC代码

Java
/* * @LastEditTime: 2026-02-19 18:04:04 */classSolution{publicintcountOdds(intlow,inthigh){return(high+1)/2-low/2;}}
Rust
/* * @LastEditTime: 2026-02-19 18:06:07 */implSolution{pubfncount_odds(low:i32,high:i32)->i32{(high+1)/2-low/2}}

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

千篇源码题解已开源

http://www.jsqmd.com/news/394791/

相关文章:

  • YOLO26涨点改进 | 独家创新、注意力改进篇 | TGRS 2025 | YOLO26引入PTIM并行标记交互模块,增强全局上下文信息捕捉,适合红外小目标检测,遥感小目标检测,图像分割有效涨点
  • 算力租赁成AI新刚需,企业如何避坑选对平台?
  • YOLO26涨点改进 | 全网独家创新、细节涨点改进篇 | CVPR 2025 | 将 TAB 模块引入YOLO26可显著提升其对长距离依赖建模能力,在小目标、遮挡、密集场景下带来显著检测精度
  • 从SEO到GEO:谁在主导AI搜索优化的技术变革?
  • YOLO26涨点改进 | 全网独家首发、特征融合改进篇 | AAAI 2025 | 引入CDFA对比驱动特征聚合模块,实现多尺度特征融合,增强目标相关特征、突出关键区域,提高小目标检测和分割高效涨点
  • 算力租赁市场迎来变革,RTX 4090成开发者首选
  • YOLO26涨点改进 | 全网独家创新,注意力改进篇 | TIP 2025 | 引入DWM-MSA双窗口多尺度多头自注意力,全局和局部特征全捕获,增强特征表达能力,适合目标检测、图像分类、分割完美涨点
  • YOLO26涨点改进 | 全网独家首发、特征融合改进篇 | TIP 2025 | 引入CAFM 双分支交叉注意力融合模块,实现多尺度特征融合,增强目标相关特征、突出关键区域,提高小目标检测涨点与轻量化
  • YOLO26涨点改进 | 全网独家创新,注意力改进篇 | CVPR 2024 | 引入MFMSA多频多尺度注意力,联合建模频率与空间信息,适合小目标检测、医学图像分割、遥感目标检测、图像分类、实例分割
  • K8s常见问题(5) - 教程
  • GitHub Copilot:AI 驱动的编程伙伴,如何重塑开发者的工作流程
  • 考虑温度的锂电池建模及状态参数估计探索
  • seqtk从fastq中随机抽取reads
  • 卷积神经网络提取人脸五个特征点:从0到1避坑指南(附完整代码)
  • 10]RichEdit另存 为BMP图片
  • R的包(packages)是由R函数、数据和预编译代码组成的一种结构化集合
  • 【开题答辩全过程】以 基于微信小代码的课程表信息系统的开发实现为例,包含答辩的问题和答案
  • AI元人文:自感注册权与人类责任主义
  • Python3 的字符串运算符详解
  • 探寻2026彩铝优选:口碑品牌排行榜出炉,比锡板/彩钢/耐指纹彩钢/比锡纳米板/彩铝/印花彩钢,彩铝直销厂家费用多少 - 品牌推荐师
  • 回归与分类的本质区别
  • 爱流量——全网流量营销的创新孵化器
  • 停止让你的Linux服务器对黑客敞开大门:一份实用的安全指南
  • B站清华128小时Python高级教程一(C3深入类和对象)
  • 题解:洛谷 B2016 浮点数向零舍入
  • 专科生必看!倾心之选的一键生成论文工具 —— 千笔ai写作
  • 2026重庆火锅热推榜,这些美味不容你错过!火锅店/美食/特色美食/火锅/社区火锅,火锅品牌必吃榜 - 品牌推荐师
  • 写了 10 年后端,看到 XinServer 后端平台我哭了
  • 2026衬塑衬四氟管道哪家强?本地工厂预制化管道品牌榜出炉,碳钢管道/耐磨管件/高压管件/管道,工厂预制化管道品牌排行 - 品牌推荐师
  • 给你一张清单 9个降AI率平台测评对比 专科生必看