当前位置:网站首页>【LeetCode】1283. 使结果不超过阈值的最小除数
【LeetCode】1283. 使结果不超过阈值的最小除数
2022-08-09 04:55:00 【酥酥~】
题目
给你一个整数数组 nums 和一个正整数 threshold ,你需要选择一个正整数作为除数,然后将数组里每个数都除以它,并对除法结果求和。
请你找出能够使上述结果小于等于阈值 threshold 的除数中 最小 的那个。
每个数除以除数后都向上取整,比方说 7/3 = 3 , 10/2 = 5 。
题目保证一定有解。
示例 1:
输入:nums = [1,2,5,9], threshold = 6
输出:5
解释:如果除数为 1 ,我们可以得到和为 17 (1+2+5+9)。
如果除数为 4 ,我们可以得到和为 7 (1+1+2+3) 。如果除数为 5 ,和为 5 (1+1+1+2)。
示例 2:
输入:nums = [2,3,5,7,11], threshold = 11
输出:3
示例 3:
输入:nums = [19], threshold = 5
输出:4
提示:
1 <= nums.length <= 5 * 10^4
1 <= nums[i] <= 10^6
nums.length <= threshold <= 10^6
题解
二分法
以最大值最小值为两端,不断修改mid求得最优解
class Solution {
public:
int smallestDivisor(vector<int>& nums, int threshold) {
int left = 1;
int right = *max_element(nums.begin(),nums.end());
int res = 1;
while(left<=right)
{
int mid = left + ((right-left)>>1);
int cnt = 0;
for(int i:nums)
{
cnt += i/mid + (i%mid!=0);
}
//cout<<left<<"=="<<mid<<"=="<<right<<"==>"<<cnt<<endl;
if(cnt > threshold)
{
left = mid+1;
}
else
{
right = mid-1;
res = mid;
}
}
return res;
}
};
边栏推荐
- C Advanced - Program Compilation (Preprocessing) + Linking
- Ali YunTianChi competition problem (machine learning) - O2O coupons prediction (complete code)
- Disappearance of heritability - wiki
- Zuul---路由功能
- 杰理之手机OTG问题【篇】
- [OpenCV] - Find and draw contours
- mysql content does not exist error
- [Harmony OS] [ARK UI] ETS context basic operations
- 【开发者必看】【push kit】推送服务服务典型问题合集2
- equals and ==
猜你喜欢

学习笔记_numpy图片基本操作_自用
![[Harmony OS] [ARK UI] ETS context basic operations](/img/40/d5924477c42e2b3246eb212f4be534.png)
[Harmony OS] [ARK UI] ETS context basic operations

MySQL: Intent Shared Locks and Intentional Exclusive Locks | Deadlocks | Lock Optimization

2022年8月深圳产品经理认证招生简章(NPDP)

通讯录(动态版)(C语言)(VS)
![[Harmony OS] [ArkUI] ets development graphics and animation drawing](/img/36/f4c91f794b1321f11a24505d1617fb.png)
[Harmony OS] [ArkUI] ets development graphics and animation drawing

【HMS core】【Ads Kit】华为广告——海外应用在国内测试正式广告无法展示

【Harmony OS】【FAQ】Hongmeng Questions Collection 1

Pycharm Debug调试使用+代码调试理解

GraalVM安装
随机推荐
Docker部署MySQL
JS-DOM-对象的事件onload、匿名函数、this
基于ABP和Magicodes实现Excel导出操作
如何剪裁svg并压缩
杰理之智能充电仓低电发码关机 触摸不开机【篇】
leetcode:316. 去除重复字母
MySQL: Implementation Principles of Submitted Read and Repeatable Read | MVCC (Multi-Version Concurrency Control) - Notes for Your Own Use
【HMS core】【ML kit】Machine Learning Service FAQ
力扣242-有效的字母异位词——哈希表法
JS-DOM--全局DOM对象document-history-location-navigator-screen-window
力扣349-两个数组的交集——HashSet
【暑期每日一题】洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is Here
ELTEK电源维修SMPS5000SIL整流器模块故障分析及特点
could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarExcept
Hhhhgffsb
ABP 6.0.0-rc.1的新特性
力扣202-快乐数——哈希集合
equals and ==
[Harmony OS] [ARK UI] ETS context basic operations
Example of 360 assessment feedback questions