天池 在线编程 木材加工(二分查找)
文章目录
- 1. 题目
- 2. 解题
1. 题目
有一些原木,现在想把这些木头切割成一些长度相同的小段木头,需要得到的小段的数目至少为 k。
当然,我们希望得到的小段越长越好,你需要计算能够得到的小段木头的最大长度。
木头长度的单位是厘米。原木的长度都是正整数,我们要求切割得到的小段木头的长度也要求是整数。
无法切出要求至少 k 段的,则返回 0 即可。
示例
样例 1
输入:
L = [232, 124, 456]
k = 7
输出: 114
Explanation: 我们可以把它分成114cm的7段,而115cm不可以样例 2
输入:
L = [1, 2, 3]
k = 7
输出: 0
说明:很显然我们不能按照题目要求完成。
https://tianchi.aliyun.com/oj/231203672248052266/245580596369363585
2. 解题
- 二分查找模板题
class Solution {public:/*** @param L: Given n pieces of wood with length L[i]* @param k: An integer* @return: The maximum length of the small pieces*/int woodCut(vector<int> &L, int k) {// write your code hereint l = 1, r = INT_MAX, mid, maxlen = 0;while(l <= r){mid = l+((r-l)/2);if(ok(L, mid, k))// 每段 mid 长度,能切出来 k 根吗{maxlen = mid;l = mid+1;}elser = mid-1;}return maxlen;}bool ok(vector<int> &L, int len, int k){int count = 0;for(int i = 0; i < L.size(); i++){count += L[i]/len;}return count >= k;}
};
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
天池 在线编程 木材加工(二分查找)相关推荐
- 【组队学习】【34期】阿里云天池在线编程训练营
阿里云天池在线编程训练营 航路开辟者:陈信达.杨世超.赵子一.马燕鹏 领航员:武帅.初晓宇.叶前坤.邱广坤.朱松青 航海士:宁彦吉.肖桐.汪超.陈信达.杨世超.赵子一.武帅.初晓宇.叶前坤.邱广坤.朱 ...
- 天池 在线编程 最佳利用率(二分查找 + 哈希)
文章目录 1. 题目 2. 解题 1. 题目 给两个排序的数组. 从两个数组中各取取一个数,这两个数之和需要小于或等于k, 需要找到两数之和最大的索引组合. 返回一对包含两个列表的索引. 如果有多个两 ...
- LeetCode 911. 在线选举(二分查找)
文章目录 1. 题目 2. 解题 1. 题目 在选举中,第 i 张票是在时间为 times[i] 时投给 persons[i] 的. 现在,我们想要实现下面的查询函数: TopVotedCandida ...
- java 二分搜索获得大于目标数的第一位_程序员数据结构算法编程,二分查找搜索算法的原理与应用介绍!...
本文来讲一种搜索算法,即二分搜索算法,通常在面试时也会被问到. 我们先来看一个例子,在图书馆通常是根据查到的编号去找书,可以在书架上按顺序一本本地查找,也可以找到一本书不符合预期时,再跳过一大部分书再 ...
- 天池 在线编程 求和查找
文章目录 1. 题目 2. 解题 1. 题目 来源:https://tianchi.aliyun.com/oj/164427478262600292/204998627646706400 2. 解题 ...
- 天池 在线编程 Character deletion
文章目录 1. 题目 2. 解题 1. 题目 描述 Enter two strings and delete all characters in the second string from the ...
- 天池 在线编程 最长AB子串(哈希)
文章目录 1. 题目 2. 解题 1. 题目 描述 给你一个只由字母'A'和'B'组成的字符串s,找一个最长的子串,要求这个子串里面'A'和'B'的数目相等,输出该子串的长度. 这个子串可以为空. s ...
- 天池 在线编程 最大子树(自底向上)
文章目录 1. 题目 2. 解题 1. 题目 描述 给你一棵二叉树,找二叉树中的一棵子树,他的所有节点之和最大. 返回这棵子树的根节点. 我会把你返回的节点作为最优子树的树根来打印. 数据保证有且仅有 ...
- 天池 在线编程 输入流
文章目录 1. 题目 2. 解题 1. 题目 描述 给出两个输入流 inputA 和 inputB(包含退格符), 如果两个输入流最后的结果相等,输出 YES,否则输出 NO. 输入字符只包括小写字母 ...
最新文章
- 使用Docsify搭建Markdown文件服务器
- 面向对象解决了全局变量问题?
- component表
- Python基础之格式化输出函数format()功能详解
- 空列表不等同于None
- 微信小程序支付,带java源码
- [转]Myeclipse9引入easy_ui时,其中的部分js文件报错
- 前端解读控制反转(IOC)
- 案例解析丨Spark Hive自定义函数应用
- linux能秒创虚拟机吗,linux下5秒创建rhel7虚拟机
- python 运维管理架构_企业运维监控平台架构设计与实现(ganglia篇)
- gzdeflate函数_PHP中的gzcompress、gzdeflate、gzencode函数详解_php实例
- python工资一般多少西安-Python让我在西安成为高薪quot;贵族”
- .Net 指针使用以及在栈上创建引用对象
- Oracle 正则表达式函数-REGEXP_REPLACE 使用例子
- Java编程:矩阵网格类算法问题做DFS
- 【最全】微信支付宝小程序蓝牙API开锁全流程
- 视频投屏技术原理分享
- win10隐藏图标按钮消失的解决办法
- 永远不能懈怠,要记住,黎明之前,最为黑暗