2226. 每个小孩最多能分到多少糖果

【二分查找】candies[i]<=10^7,因此仍然可以对这个解空间进行二分,对于每一个解x枚举candies,因为每个人分到的必须是x,并且剩下的不能合并,因此candies[i]对答案的贡献只有Math.floor(candies[i] / x),其实直接candies[i] / x就是向下取整了;如果check到的值<k,说明x太大了,应该去左边继续找,这样能保证左边的x都是check后<=k的,要求最大的x返回左边的右端点即right就行。

class Solution {int[] c;long k;public long check(int x){long ret = 0;for(var i: c) {ret += i / x;if(ret > k) return ret; }return ret;}public int maximumCandies(int[] candies, long k) {long sum = 0;c = candies;this.k = k;int right = c[0], left = 1;for(var i: c) {sum += i;right = Math.max(right, i);}if(sum < k) return 0;while(left <= right){int mid = (left + right) >>> 1;if(check(mid) < k) right = mid - 1;else left = mid + 1;}return right;}
}

LeetCode 2226. 每个小孩最多能分到多少糖果相关推荐

  1. (学习笔记)LeetCode 2226. 每个小孩最多能分到多少糖果

    二分法 类似题 2187. 完成旅途的最少时间 确定查找区间:该题目要求 你需要将这些糖果分配给 k 个小孩,使每个小孩分到 相同 数量的糖果.每个小孩可以拿走 至多一堆 糖果,有些糖果可能会不被分配 ...

  2. 2226. 每个小孩最多能分到多少糖果

    leetcode力扣刷题打卡 题目:2226. 每个小孩最多能分到多少糖果 描述:给你一个 下标从 0 开始 的整数数组 candies .数组中的每个元素表示大小为 candies[i] 的一堆糖果 ...

  3. 【二分--分堆】-LeetCode-2226. 每个小孩最多能分到多少糖果

    2226. 每个小孩最多能分到多少糖果 提示: 1<=candies.length<=1051 <= candies.length <= 10^51<=candies.l ...

  4. [二分答案]leetcode2226:每个小孩最多能分到多少糖果(medium)

    题目: 题解: 思路:类比 2187. 完成旅途的最少时间 使用二分法,二分查找至少分成 k 份的最大糖果数. 二分查找的边界:下界为 0,表示 k 份都是 0 个糖果:上界为 sum(a)/k,表示 ...

  5. 花呗分期计算器_花呗分期最多能分多久?

    最近,我们接到来自江苏消防员小哥哥董杰的咨询:花呗分期最多能分多久? 董杰和女友是异地恋,因为工作的特殊性,想给女友一个长长久久的承诺:用花呗分期买一枚戒指向女友求婚. 咱们村又有喜事了!乱发奖委员会 ...

  6. LeetCode 力扣C++题解 575. 分糖果

    题目描述:给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果.你需要把这些糖果平均分给一个弟弟和一个妹妹.返回妹妹可以获得的最大糖果的种类数.(难度:简单) 原题链接: ...

  7. 二分搜索算法(以力扣周赛“每个小孩最多分到多少糖果”为例)

    上午刚刚打完力扣周赛,感觉心有余而力不足,好多次都有这么一种差一点就AC的感觉,所以归根结底还是自己基础不牢的缘故,借着有感记录下二分搜索算法的解法,也祭奠下自己第287场周赛的再次失败! 二分搜索算 ...

  8. leetCode简单算法之排排坐,分糖果

    问题描述: 排排坐,分糖果. 我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友. 给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最后 ...

  9. 【LeetCode】3 求最多能有多少个点位于同一直线上

    码上生花,ECharts 作品展示赛正式启动!>>> 题目: 对于给定的n个位于同一二维平面上的点,求最多能有多少个点位于同一直线上 思路: 1.如果坐标point的数组Point[ ...

最新文章

  1. BZOJ 1801 [Ahoi2009]中国象棋(线性动规)(洛谷P2051)
  2. SaltStack:Salt SSH
  3. 菜鸟学java ——(一)面向对象程序设计(几个重要的概念)
  4. 将0移到最后,在原数组操作,并且不能改变源数据顺序(JS编程)
  5. maven报错: 错误的类文件:… 类文件具有错误的版本 52.0,应为 54.0
  6. 这个地球仪太惊艳了,陪孩子畅聊天文地理。
  7. 13.5.SolrCloud集群使用手册之数据导入
  8. 解决python中html 代码被注释掉 依旧被解释导致报错ERROR:tornado.access:500 GET /home (xxx.xxx.xxx.xxx)
  9. Spring boot 出现的时间
  10. OSChina 周六乱弹 —— 知道今天的乱弹为什么会迟发吗?
  11. 42.从非托管磁盘创建虚拟机
  12. malloc和calloc之间的区别?
  13. 【渝粤教育】国家开放大学2018年秋季 1374T班级管理 参考试题
  14. jsmind 线条_jsMind思维导图模式展示数据
  15. 2012-7-10可樂词汇积累#9315;
  16. Failed to execute vcredist_x64.exe
  17. Elasticsearch 运行时类型 Runtime fields 深入详解
  18. Cat源码分析(三):10种分析器
  19. 今年48岁社保一直没有交过,现在单位要求一定要买,可是就差两年就到退休,该怎么办?
  20. JDK Oracle 官网下载地址

热门文章

  1. StringUtils常用方法
  2. 电子显微镜的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  3. Pygame小游戏别踩钢琴块
  4. python运行电脑要求_别这样直接运行python命令,否则电脑等于“裸奔”
  5. 绕安全狗mysql_Mysql注入绕过安全狗
  6. 手机高端化,需要不同却被认同
  7. 手机也能编程!Scratch3安卓版下载【官方正版apk】
  8. 谷歌母公司Q4营收753亿美元同比增32% 全年营收2576亿美元
  9. 采用TI多标准基站 SoC 实现性能、效率与差异化的全面提升
  10. 2023,有哪些还不错的国企?