Skip to content

Commit 22d618f

Browse files
authored
Create 2616-minimize-the-maximum-difference-of-pairs.js
1 parent 2ff0661 commit 22d618f

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
* @param {number[]} nums
3+
* @param {number} p
4+
* @return {number}
5+
*/
6+
const minimizeMax = function(nums, p) {
7+
nums.sort((a, b) => a - b)
8+
const n = nums.length
9+
let l = 0, r = nums.at(-1) - nums[0]
10+
11+
while(l < r) {
12+
const mid = Math.floor(l + (r - l) / 2)
13+
let k = 0
14+
for(let i = 1; i < n;) {
15+
if(nums[i] - nums[i - 1] <= mid) {
16+
k++
17+
i += 2
18+
} else {
19+
i++
20+
}
21+
}
22+
23+
if(k >= p) {
24+
r = mid
25+
} else {
26+
l = mid + 1
27+
}
28+
}
29+
30+
return l
31+
};

0 commit comments

Comments
 (0)