给你一个整数数组 bloomDay,以及两个整数 m 和 k 。

现需要制作 m 束花。制作花束时,需要使用花园中 相邻的 k 朵花 。

花园中有 n 朵花,第 i 朵花会在 bloomDay[i] 时盛开,恰好 可以用于 一束 花中。

请你返回从花园中摘 m 束花需要等待的最少的天数。如果不能摘到 m 束花则返回 -1 。

示例 1:

输入:bloomDay = [1,10,3,10,2], m = 3, k = 1
输出:3
解释:让我们一起观察这三天的花开过程,x 表示花开,而 _ 表示花还未开。
现在需要制作 3 束花,每束只需要 1 朵。
1 天后:[x, _, _, _, _] // 只能制作 1 束花
2 天后:[x, _, _, _, x] // 只能制作 2 束花
3 天后:[x, _, x, _, x] // 可以制作 3 束花,答案为 3

代码

class Solution {public int minDays(int[] bloomDay, int m, int k) {int[] temp=bloomDay.clone();Arrays.sort(temp);int n=bloomDay.length,l=0,r=n-1;if(n<m*k) return -1;while (l<=r)//二分查找满足的day{int mid=(r-l)/2+l;if(getMinDays(bloomDay, k, temp[mid])>=m)r=mid-1;else l=mid+1;}return temp[l];}public int getMinDays(int[] bloomDay, int k,int day) {//查找day时间内能生产多少束花int num=0,res=0;for(int i=0;i<bloomDay.length;i++){if(bloomDay[i]-day<=0){num++;}else num=0;if(num==k){num=0;res++;}}return res;}
}

leetcode1482. 制作 m 束花所需的最少天数(二分法)相关推荐

  1. Leetcode_1482.制作m束花所需的最少天数

    给你一个整数数组 bloomDay,以及两个整数 m 和 k . 现需要制作 m 束花.制作花束时,需要使用花园中 相邻的 k 朵花 . 花园中有 n 朵花,第 i 朵花会在 bloomDay[i] ...

  2. Leetcode 1482题 制作 m 束花所需的最少天数

    Leetcode 1482题 制作 m 束花所需的最少天数 链接: 制作 m 束花所需的最少天数. 提交结果: 解题思路 本题主要采用二分查找的解题思路,范围为0到天数最大值,根据是否能组成相应数量的 ...

  3. leetcode 1482. 制作 m 束花所需的最少天数(二分查找)

    给你一个整数数组 bloomDay,以及两个整数 m 和 k . 现需要制作 m 束花.制作花束时,需要使用花园中 相邻的 k 朵花 . 花园中有 n 朵花,第 i 朵花会在 bloomDay[i] ...

  4. LeCo-1482.制作 m 束花所需的最少天数

    题目描述: 解答: public int minDays(int[] bloomDay, int m, int k) {int len=bloomDay.length;if(len<m*k){r ...

  5. leetode题库5438--制作 m 束花所需的最少天数

    5438. 制作 m 束花所需的最少天数 给你一个整数数组 bloomDay,以及两个整数 m 和 k . 现需要制作 m 束花.制作花束时,需要使用花园中 相邻的 k 朵花 . 花园中有 n 朵花, ...

  6. 制作一个状态栏中跑马灯效果_图标设计指南(3)——制作一个图标集所需全部信息(中)...

    本文翻译自图标设计专家Justas Galaburda写的图标设计指南.本文主要介绍制作一个图标集所需全部信息(中).翻看同系列文章,直接到文章最底部. 制作一个图标集所需全部信息 上次我们介绍了我将 ...

  7. 软件开发测试男友花束,观察这四束花束凭直觉选一束花?测一测别人都在羡慕你的什么?...

    观察这四束花束凭直觉选一束花?测一测别人都在羡慕你的什么? 每个人都会有羡慕别人的地方,毕竟有些东西是你怎么努力都达不到,但是别人轻易就能达到的,比如说一些人天生家里条件就很好,所以都不需要怎么努力就 ...

  8. Arduino Mega/Uno制作宏定义键盘(不需刷firmware!!)

    本人机械专业大一编程小白一枚,接触编程不到半年.近期开始自学Arduino.这应该是本人第一篇博客,有错误之处敬请斧正! - 心路&思路 家住武汉,这个年嘛,大家应该都懂,被迫宅化.年前从网上 ...

  9. 制作网站价格是多少呢?制作网站要花多少钱?

    对于制作网站要花多少钱目前没有明确的规定,这些企业用户可以根据自己的需求去选择适合自己的网站制作价格.企业用户在这方面选择的时候可以多选择几家网站建设公司,然后根据他们的价格去选择.因为影响制作网站的 ...

最新文章

  1. ngx_http_redis_module配置使用
  2. Word中轻松插入本地视频
  3. Resnet的pytorch官方实现代码解读
  4. RUNOOB python练习题8 numpy矩阵的索引及遍历
  5. Spring Boot实践——基础和常用配置
  6. android java thread_Android中断并重启一个Thread线程的简单方法
  7. 安装scws需要安装php吗,Linux 安装SCWS-1.2.3 安装说明(包括php扩展)
  8. 用友U8出纳系统无法筛选未制单日记账的解决方法
  9. 数字逻辑_逻辑函数化简(配项法)例子
  10. flex blazeds java_Flex使用Blazeds与Java交互及自定义对象转换详解
  11. java科学计数法的基本使用与如何看科学计数法
  12. 在哪里写博客比较好?不同写作平台的横向对比
  13. Android项目:基于Android手机校园外卖订餐系统(计算机毕业设计)
  14. QtCreator中Kits选项变灰,有感叹号
  15. flutter开发的ios应用没法通过爱思等工具浏览文件目录Document
  16. 全面剖析可行性研究报告的内容
  17. 1 C C++初识
  18. The valid characters are defined in RFC 7230 and RFC 3986
  19. StringTokenizer类详解
  20. excel切片器联动

热门文章

  1. arm-linux-gcc静态编译和动态编译的区别
  2. 树莓派第一次开机自动连接WIFI(不用显示屏方法)
  3. 【Verilog HDL学习之路】第一章 Verilog HDL 数字设计总论
  4. 前台进程组、后台进程组
  5. Wireshark(1):Wireshark基本用法
  6. WinPcap笔记(5):不用回调方法捕获数据包
  7. Java面试题及答案2020,kafka教程分享
  8. JMeter学习(三十一)Access Log Sampler
  9. Flex +WebService
  10. 《Head First设计模式》 读书笔记16 其余的模式(二) 蝇量 解释器 中介者