Minimized Maximum of Products Distributed to Any Store LeetCode solution in JavaScript

1
var minimizedMaximum = function (n, quantities) {
2
const MAX = Number.MAX_SAFE_INTEGER;
3
const m = quantities.length;
4

5
let left = 1;
6
let right = quantities.reduce((acc, num) => acc + num, 0);
7

8
let minRes = MAX;
9

10
while (left <= right) {
11
const mid = (left + right) >> 1;
12

13
if (canDistribute(mid)) {
14
minRes = Math.min(minRes, mid);
15
right = mid - 1;
16
} else {
17
left = mid + 1;
18
}
19
}
20

21
return minRes;
22

23
function canDistribute(minGiven) {
24
const clonedQ = [...quantities];
25

26
let j = 0;
27
let i = 0;
28

29
for (; i < n && j < m; ++i) {
30
const remQ = clonedQ[j];
31

32
if (remQ > minGiven) {
33
clonedQ[j] -= minGiven;
34
} else {
35
++j;
36
}
37
}
38

39
return j === m;
40
}
41
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0