二分
ludan_xia
我很菜 但是我会 一步步地 努力!
展开
-
leetcode 410. 分割数组的最大值
给定一个非负整数数组和一个整数m,你需要将这个数组分成m个非空的连续子数组。设计一个算法使得这m个子数组各自和的最大值最小。 注意: 数组长度n满足以下条件: 1 ≤ n ≤ 1000 1 ≤ m ≤ min(50, n) 示例: 输入: nums = [7,2,5,10,8] m = 2 输出: 18 解释: 一共有四种方法将nums分割为2个子数组。 其中最好的方式是将...原创 2020-03-30 09:42:43 · 92 阅读 · 0 评论 -
leetcode 719. 找出第 k 小的距离对(二分超级好题!)
719. 找出第 k 小的距离对 给定一个整数数组,返回所有数对之间的第 k 个最小距离。一对 (A, B) 的距离被定义为 A 和 B 之间的绝对差值。 示例 1: 输入: nums = [1,3,1] k = 1 输出:0 解释: 所有数对如下: (1,3) -> 2 (1,1) -> 0 (3,1) -> 2 因此第 1 个最小距离的数对是 (1,1),它们之间的...原创 2020-03-20 21:37:05 · 238 阅读 · 0 评论 -
洛谷_P1182 数列分段 Section II
题目描述 对于给定的一个长度为N的正整数数列A_{1\sim N}A1∼N,现要将其分成MM(M\leq NM≤N)段,并要求每段连续,且每段和的最大值最小。 关于最大值最小: 例如一数列4\ 2\ 4\ 5\ 142451要分成33段。 将其如下分段: [4\ 2][4\ 5][1][42][45][1] 第一段和为66,第22段和为99,第33...原创 2020-03-13 13:11:50 · 309 阅读 · 0 评论 -
leetcode34. 在排序数组中查找元素的第一个和最后一个位置
class Solution { public: int lower(vector<int>& nums, int target){ int l = 0; int r = nums.size(); int mid; while(l<r){ mid = (l+r)/2; ...原创 2020-03-12 00:25:48 · 127 阅读 · 0 评论 -
leetcode29. 两数相除
给定两个整数,被除数dividend和除数divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数dividend除以除数divisor得到的商。 示例1: 输入: dividend = 10, divisor = 3 输出: 3 示例2: 输入: dividend = 7, divisor = -3 输出: -2 说明: 被除数和除数均为 32...原创 2020-03-11 22:49:13 · 138 阅读 · 0 评论