LintCode 1816. 使结果不超过阈值的最小除数(二分查找)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

描述

给你一个整数数组 nums 和一个正整数 threshold ,你需要选择一个正整数作为除数,然后将数组里每个数都除以它,并对除法结果求和

请你找出能够使上述结果小于等于阈值 threshold 的除数中 最小 的那个

每个数除以除数后都向上取整,比方说 7/3 = 3 , 10/2 = 5 。

题目保证一定有解。
1 <= nums.length <= 5 * 10^4
1 <= nums[i] <= 10^6
nums.length <= threshold <= 10^6示例 1:
输入:nums = [1,2,5,9], threshold = 6
输出:5
解释:如果除数为 1 ,我们可以得到和为 171+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

https://www.lintcode.com/problem/find-the-smallest-divisor-given-a-threshold/description

2. 解题

类似题目:
LeetCode 410. 分割数组的最大值(极小极大化 二分查找)
LeetCode 668. 乘法表中第k小的数(二分查找)
LeetCode 774. 最小化去加油站的最大距离(极小极大化 二分查找)
LeetCode 875. 爱吃香蕉的珂珂(二分查找)
LeetCode LCP 12. 小张刷题计划(二分查找)
LeetCode 1011. 在 D 天内送达包裹的能力(二分查找)
LeetCode 1102. 得分最高的路径(优先队列BFS/极大极小化 二分查找)
LeetCode 1062. 最长重复子串(二分查找)
LeetCode 5438. 制作 m 束花所需的最少天数(二分查找)
LeetCode 5489. 两球之间的磁力(极小极大化 二分查找)
LeetCode 5548. 最小体力消耗路径(DFS + 二分查找)

  • 二分查找答案,除数变大,和变小或不变,有单调性
class Solution {
public:/*** @param nums: an array of integers* @param threshold: an integer* @return: return the smallest divisor*/int smallestDivisor(vector<int> &nums, int threshold) {// write your code hereint l = 1, r = INT_MAX, mid, ans;while(l <= r){mid = l+((r-l)>>1);if(sumok(nums, mid, threshold)){ans = mid;r = mid-1;}elsel = mid+1;}return ans;}bool sumok(vector<int>& a, int div, int threshold){long long sum = 0;for(auto n : a){sum += ceil(n/double(div));if(sum > threshold)return false;}return true;}
};

53ms C++


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/472997.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

马里兰大学calce电池循环测试数据集_千次循环,全程1.5V恒压,紫米新一代充电锂电池套装上手体验...

电池应该是每个家庭都会用到的东西&#xff0c;在现在智能家电飞迅发展的当下更是如此&#xff0c;比如智能门锁、智能门铃&#xff0c;都需要电池的供电&#xff0c;才能正常使用。而普通碱电池在电量耗尽后就无法循环使用&#xff0c;所以为了能节省成本减少电池对环境的污染…

TensorFlow 2.0 - TFRecord存储数据集、@tf.function图执行模式、tf.TensorArray、tf.config分配GPU

文章目录1. TFRecord 格式存储2. tf.function 高性能3. tf.TensorArray 支持计算图特性4. tf.config 分配GPU学习于&#xff1a;简单粗暴 TensorFlow 2 1. TFRecord 格式存储 使用该种格式&#xff0c;更高效地进行大规模的模型训练 import random import os import tensorfl…

c++ qt qlistwidget清空_Qt编写控件属性设计器12-用户属性

一、前言用户属性是后面新增加的一个功能&#xff0c;自定义控件如果采用的Q_PROPERTY修饰的属性&#xff0c;会自动识别到属性栏中&#xff0c;这个一般称为控件属性&#xff0c;在组态设计软件中&#xff0c;光有控件本身的控件属性还是不够的&#xff0c;毕竟这些属性仅仅是…

TensorFlow 2.0 - tf.saved_model.save 模型导出

文章目录1. tf.saved_model.save2. Keras API 模型导出学习于&#xff1a;简单粗暴 TensorFlow 2 1. tf.saved_model.save tf.train.Checkpoint 可以保存和恢复模型中参数的权值导出模型&#xff1a;包含参数的权值&#xff0c;计算图 无须源码即可再次运行模型&#xff0c;适…

机器人动力学与控制_力控制与位置控制的区别

1.背景介绍目前已经广泛落地的力控制方案是在机械臂末端安装多轴力矩传感器&#xff0c;用以检测机械臂对外界环境施加的力反馈值&#xff0c;并配合适当的控制策略&#xff0c;已达到控制机械臂与环境的作用力。这篇文章所要探讨的力控制&#xff08;上述力控制方案&#xff0…

基坑监测日报模板_基坑监测有多重要?实录基坑坍塌过程,不亲身经历,不知道现场有多恐怖!...

基坑整体坍塌不亲身经历&#xff0c;不知其恐怖▼前段时间&#xff0c;南宁绿地中央广场房地产项目D号地块(二期)基坑北侧约60米支护桩突然崩塌&#xff01;所幸无人伤亡。深基坑施工安全生产管理要点一、基坑开挖 1、 临边防护(1)基坑施工必须按要求进行&#xff0c;具体临边防…

[转]asp.net导出数据到Excel的三种方法

原文出处&#xff1a;asp.net导出数据到Excel的几种方法(1/3) 、asp.net导出数据到Excel的几种方法(2/3)、asp.net导出数据到Excel的几种方法(3/3) asp.net导出到Excel也是个老生常谈的问题&#xff0c;在此归纳一下。 第一种是比较常用的方法。是利用控件的RenderControl功能…

LintCode 378. 将二叉树转换成双链表(非递归遍历)

文章目录1. 题目2. 解题1. 题目 将一个二叉树按照中序遍历转换成双向链表。 样例 样例 1&#xff1a; 输入:4/ \2 5/ \1 3 输出: 1<->2<->3<->4<->5样例 2&#xff1a; 输入:3/ \4 1输出:4<->3<->1https://www.lintcode.com/pro…

js 将图片置灰_艾叶灰千万别扔——艾叶灰的神奇功效

请 点 上面“经络技巧”免费关注每晚9点准时免费更新点击下面图片阅读↓↓↓—— 以下是正文 ——艾灰的妙用1、宝宝经常会有红屁股&#xff0c;做妈妈的当然心疼&#xff0c;用了不少膏啊霜啊油啊&#xff0c;效果也是反反复复&#xff0c;尤其害怕会有依赖性。在妈妈的提醒下…

LintCode 434. 岛屿的个数II(并查集)

文章目录1. 题目2. 解题1. 题目 给定 n, m, 分别代表一个二维矩阵的行数和列数, 并给定一个大小为 k 的二元数组A. 初始二维矩阵全0. 二元数组A内的k个元素代表k次操作, 设第 i 个元素为 (A[i].x, A[i].y), 表示把二维矩阵中下标为A[i].x行A[i].y列的元素由海洋变为岛屿. 问在…

jqprintsetup已经安装还会提示_Windows 10更新将修复困扰用户已久的循环安装问题...

对于某些设备的用户来说&#xff0c;过去一年一直深受 Windows Update 陷入循环更新的问题困扰&#xff0c;尤其是那些使用英特尔驱动程序的设备。问题在于 Windows Update 会提示错误地提供不适配的驱动或版本&#xff0c;并且强行覆盖安装。此外即便用户已经安装了更新更好的…

springboot设置运行内存_Docker 如何运行多个 Springboot?

docker 如何运行多个Springboot &#xff1f;第一个&#xff1a;端口映射第二个&#xff1a;指定内存大小第三个&#xff1a;读取、写入物理文件第四个&#xff1a;日志文件第五个&#xff1a;多个容器内部网络访问第六个&#xff1a;遇到的问题第一个&#xff1a;端口映射Ngin…

LintCode 1915. 举重(01背包)

文章目录1. 题目2. 解题1. 题目 奥利第一次来到健身房&#xff0c;她正在计算她能举起的最大重量。 杠铃所能承受的最大重量为maxCapacity&#xff0c;健身房里有 n 个杠铃片&#xff0c;第 i 个杠铃片的重量为 weights[i]。 奥利现在需要选一些杠铃片加到杠铃上&#xff0c;使…

python实现简单线性回归和多元线性回归算法

1、问题引入 在统计学中&#xff0c;线性回归是利用称为线性回归方程的最小二乘函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。这种函数是一个或多个称为回归系数的模型参数的线性组合。一个带有一个自变量的线性回归方程代表一条直线。我们需要对线性回归结…

form表单通过checkbox_飞冰表单解决方案 - FormBinder

前言中后台业务场景中&#xff0c;表单是一种很常见的与用户交互的方式&#xff0c;从业务角度看&#xff0c;表单主要是收集用户的信息&#xff0c;而从技术角度看&#xff0c;作为一个通用型的组件&#xff0c;它要解决的问题无非就是三个&#xff1a;把一个初始数据对象扔给…

@data 重写set方法_C#中的类、方法和属性

这节讲C#中的类&#xff0c;方法&#xff0c;属性。这是面向对象编程中&#xff0c;我们最直接打交道的三个结构。类&#xff1a;类(class)是面向对象中最基本的单元&#xff0c;它是一种抽象&#xff0c;对现实世界中事物的抽象&#xff0c;在C#中使用class关键字声明一个类&a…

Docker安装+镜像拉取+容器+创建镜像+push to docker hub

文章目录1. 安装2. 镜像操作3. 容器4. docker hub本文参考&#xff1a;https://zhuanlan.zhihu.com/p/23599229 1. 安装 参考 https://www.runoob.com/docker/ubuntu-docker-install.html curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun测试&#xff…

css 百分比 怎么固定正方形_你未必知道的49个CSS知识点

本文的每一条&#xff0c;都是我曾经发过的掘金沸点&#xff0c;其中有很多条超过了百赞(窃喜)。鉴于时不时有童鞋翻我以前的沸点&#xff0c;因此&#xff0c;本文收集了个人目前发过的所有CSS知识点动图&#xff0c;以便阅读。需要说明的是&#xff0c;顺序仍是按当时发布顺序…

CSS 实现加载动画之五-光盘旋转

今天做的这个动画叫光盘旋转&#xff0c;名字自己取的。动画的效果估计很多人都很熟悉&#xff0c;就是微信朋友圈里的加载动画。做过前面几个动画&#xff0c;发现其实都一个原理&#xff0c;就是如何将动画的元素如何分离出来。这个动画的实现也很简单&#xff0c;关键点在于…

css hover变成手_web前端入门到实战:彻底掌握css动画「transition」

马上就2020年了&#xff0c;不知道小伙伴们今年学习了css3动画了吗&#xff1f;说起来css动画是一个很尬的事&#xff0c;一方面因为公司用css动画比较少&#xff0c;另一方面大部分开发者习惯了用JavaScript来做动画&#xff0c;所以就导致了许多程序员比较排斥来学习css动画(…