
二分法
我很忙2010
咩
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode 436. 寻找右区间
给你一个区间数组intervals,其中intervals[i] = [starti, endi],且每个starti都不同。区间i的右侧区间可以记作区间j,并满足startj>= endi,且startj最小化。返回一个由每个区间i的右侧区间在intervals中对应下标组成的数组。如果某个区间i不存在对应的右侧区间,则下标i处的值设为-1。示例 1:输入:intervals = [[1,2]]输出:[-1...原创 2022-05-22 22:28:27 · 176 阅读 · 0 评论 -
leetcode 每个小孩最多能分到多少糖果
给你一个下标从 0 开始的整数数组candies。数组中的每个元素表示大小为candies[i]的一堆糖果。你可以将每堆糖果分成任意数量的子堆,但无法再将两堆合并到一起。另给你一个整数k。你需要将这些糖果分配给k个小孩,使每个小孩分到相同数量的糖果。每个小孩可以拿走至多一堆糖果,有些糖果可能会不被分配。返回每个小孩可以拿走的最大糖果数目。示例 1:输入:candies = [5,8,6], k = 3输出:5解释:可以将 candies[1]...原创 2022-04-03 14:59:52 · 266 阅读 · 0 评论 -
leetcode 完成旅途的最少时间
给你一个数组time,其中time[i]表示第i辆公交车完成一趟旅途所需要花费的时间。每辆公交车可以连续完成多趟旅途,也就是说,一辆公交车当前旅途完成后,可以立马开始下一趟旅途。每辆公交车独立运行,也就是说可以同时有多辆公交车在运行且互不影响。给你一个整数totalTrips,表示所有公交车总共需要完成的旅途数目。请你返回完成至少totalTrips趟旅途需要花费的最少时间。示例 1:输入:time = [1,2,3], totalTrip...原创 2022-02-27 17:48:45 · 541 阅读 · 0 评论 -
leetcode 911. 在线选举
给你两个整数数组persons和times。在选举中,第i张票是在时刻为times[i]时投给候选人persons[i]的。对于发生在时刻t的每个查询,需要找出在t时刻在选举中领先的候选人的编号。在t时刻投出的选票也将被计入我们的查询之中。在平局的情况下,最近获得投票的候选人将会获胜。实现TopVotedCandidate类:TopVotedCandidate(int[] persons, int[] times)使用persons和times数...原创 2021-12-17 23:43:23 · 130 阅读 · 0 评论 -
leetcode 分配给商店的最多商品的最小值
给你一个整数n,表示有n间零售商店。总共有m种产品,每种产品的数目用一个下标从0开始的整数数组quantities表示,其中quantities[i]表示第i种商品的数目。你需要将所有商品分配到零售商店,并遵守这些规则:一间商店至多只能有一种商品,但一间商店拥有的商品数目可以为任意件。 分配后,每间商店都会被分配一定数目的商品(可能为0件)。用x表示所有商店中分配商品数目的最大值,你希望x越小越好。也就是说,你想最小化分配给任意商店商品数...原创 2021-11-07 17:22:49 · 457 阅读 · 0 评论 -
leetcode 5764. 准时到达的列车最小时速(C++)
给你一个浮点数hour,表示你到达办公室可用的总通勤时间。要到达办公室,你必须按给定次序乘坐n趟列车。另给你一个长度为n的整数数组dist,其中dist[i]表示第i趟列车的行驶距离(单位是千米)。每趟列车均只能在整点发车,所以你可能需要在两趟列车之间等待一段时间。例如,第1趟列车需要1.5小时,那你必须再等待0.5小时,搭乘在第 2 小时发车的第2趟列车。返回能满足你准时到达办公室所要求全部列车的最小正整数时速(单位:千米每小时),如果无法准时到达,则...原创 2021-05-23 11:50:25 · 281 阅读 · 0 评论 -
leetcode 5607. 生成平衡数组的方案数(C++)
给你一个整数数组nums。你需要选择恰好一个下标(下标从0开始)并删除对应的元素。请注意剩下元素的下标可能会因为删除操作而发生改变。比方说,如果nums = [6,1,7,4,1],那么:选择删除下标1,剩下的数组为nums = [6,7,4,1]。 选择删除下标2,剩下的数组为nums = [6,1,4,1]。 选择删除下标4,剩下的数组为nums = [6,1,7,4]。如果一个数组满足奇数下标元素的和与偶数下标元素的和相等,该数组就是一个平衡数组...原创 2020-11-22 15:09:55 · 437 阅读 · 0 评论 -
LeetCode 658. 找到 K 个最接近的元素(C++)
给定一个排序好的数组,两个整数k和x,从数组中找到最靠近x(两数之差最小)的k个数。返回的结果必须要是按升序排好的。如果有两个数与x的差值一样,优先选择数值较小的那个数。示例1:输入: [1,2,3,4,5], k=4, x=3输出: [1,2,3,4]示例 2:输入: [1,2,3,4,5], k=4, x=-1输出: [1,2,3,4]...原创 2019-01-29 19:10:52 · 1720 阅读 · 0 评论 -
leetcode 1300. 转变数组后最接近目标值的数组和(C++)
给你一个整数数组arr和一个目标值target,请你返回一个整数value,使得将数组中所有大于value的值变成value后,数组的和最接近target(最接近表示两者之差的绝对值最小)。如果有多种使得和最接近target的方案,请你返回这些整数中的最小值。请注意,答案不一定是arr中的数字。示例 1:输入:arr = [4,9,3], ...原创 2019-12-29 00:29:29 · 471 阅读 · 0 评论 -
leetcode 1283. 使结果不超过阈值的最小除数(C++)
给你一个整数数组nums和一个正整数threshold,你需要选择一个正整数作为除数,然后将数组里每个数都除以它,并对除法结果求和。请你找出能够使上述结果小于等于阈值threshold的除数中最小的那个。每个数除以除数后都向上取整,比方说 7/3 = 3 , 10/2 = 5 。题目保证一定有解。示例 1:输入:nums = [1,2,5,9], th...原创 2019-12-08 14:50:54 · 383 阅读 · 0 评论