Skip to content

Commit 260b0b3

Browse files
authored
Create 2616-minimize-the-maximum-difference-of-pairs.kt
1 parent 035d9b3 commit 260b0b3

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
class Solution {
2+
fun minimizeMax(nums: IntArray, p: Int): Int {
3+
if (p == 0) return 0
4+
5+
val n = nums.size
6+
nums.sort()
7+
8+
fun good(x: Int): Boolean {
9+
var i = 0
10+
var count = 0
11+
while (i < n - 1) {
12+
if ((nums[i + 1] - nums[i]) <= x) {
13+
count++
14+
i += 2
15+
} else {
16+
i++
17+
}
18+
if (count == p) return true
19+
}
20+
return false
21+
}
22+
23+
var l = 0
24+
var r = 1000000000
25+
while (l < r) {
26+
val m = l + (r - l) / 2
27+
if (good(m)) {
28+
r = m
29+
} else {
30+
l = m + 1
31+
}
32+
}
33+
34+
return l
35+
}
36+
}

0 commit comments

Comments
 (0)