news 2026/5/10 21:32:43

D.二分查找-二分答案-求最小——1283. 使结果不超过阈值的最小除数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
D.二分查找-二分答案-求最小——1283. 使结果不超过阈值的最小除数

题目链接:1283. 使结果不超过阈值的最小除数(中等)

算法原理:

解法:二分查找

6ms击败94.13%

时间复杂度O(n×log(max_num))

因为是找最小,在左边,因此选用最左端点模型

①题目没说一定升序,且除数一旦大于最大值,之后结果都是1,因此right要取数组中的最大值,需要O(N)时间复杂度的一次遍历

②分析要找的目标值,来分析left和right最终的位置,写出判断方法check,判断当前mid作为除数是否符合<=t的条件

③如果mid在最左端点的左边,那么left=mid+1,此时分析check方法,分析如上图,对应的值应该是false

④咱们要找的就是未知的符合条件的最左端点,所以left最终的位置即答案,无需分析第二落到的位置

⑤小细节:left初始化为1,因为当最左端点就是left落到的位置时,0不能做除数,除数最小也是1

Java代码:

class Solution { public int smallestDivisor(int[] nums, int t) { //除数不能是0,所以left初始化为1 int left=1,right=0; for(int x:nums) right=Math.max(x,right); //找除数最小:最左端点模型 while(left<right){ int mid=left+(right-left)/2; if(!check(nums,mid,t)) left=mid+1; else right=mid; } return left; } private boolean check(int[] nums,int mid,int t){ int sum=0; for(int x:nums){ //+mid-1:补足余数,完成向上取整 sum+=(x+mid-1)/mid; if(sum>t) return false; } return true; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 8:48:21

LobeChat能否支持量子纠缠通信?超距作用原理与应用设想

LobeChat 与量子纠缠通信&#xff1a;一场关于现实与想象的对话 在人工智能产品日新月异的今天&#xff0c;一个看似简单的问题却频频浮现&#xff1a;“LobeChat 能不能用量子纠缠来通信&#xff1f;”这个问题背后&#xff0c;其实藏着两股力量的碰撞——一边是人们对“超距作…

作者头像 李华
网站建设 2026/5/7 22:01:15

Microsoft Teams Tab集成开发中:敬请期待

Microsoft Teams Tab集成开发中&#xff1a;敬请期待 在现代企业协作环境中&#xff0c;效率的提升不再仅仅依赖于更快的沟通工具&#xff0c;而是取决于能否将智能能力无缝嵌入工作流本身。当团队正在讨论项目进展时&#xff0c;如果能直接调用AI助手总结会议记录、查询客户数…

作者头像 李华
网站建设 2026/5/7 23:08:25

QQ空间历史记录备份工具:让青春记忆永不褪色

QQ空间历史记录备份工具&#xff1a;让青春记忆永不褪色 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 还记得那个充满非主流签名的年代吗&#xff1f;那些记录着青涩初恋、毕业离别、…

作者头像 李华
网站建设 2026/5/9 20:06:21

教育机构如何批量部署LobeChat供师生免费使用?

教育机构如何批量部署LobeChat供师生免费使用&#xff1f; 在高校和中小学信息化建设不断深化的今天&#xff0c;人工智能正从“未来技术”变为“教学刚需”。越来越多的教师希望借助AI完成作业批改、答疑辅导&#xff0c;学生也渴望拥有一个随时响应的学习助手。然而现实却充满…

作者头像 李华
网站建设 2026/5/10 8:24:55

win11灵活控制Python版本,使用pyenv-win

pyenv-win文档 使用Git git clone https://github.com/pyenv-win/pyenv-win.git "%USERPROFILE%\.pyenv"pip install pyenv-win --target %USERPROFILE%\\.pyenv~管理员PowerShell&#xff0c;添加系统设置 [System.Environment]::SetEnvironmentVariable(PYENV,$e…

作者头像 李华