Skip to main content

2064.js

/** ------------------------------------------------------------------------------
*
* 2064. Minimized Maximum of Products Distributed to Any Store
* Topics: Binary Search
* https://leetcode.com/problems/minimized-maximum-of-products-distributed-to-any-store/?envType=daily-question&envId=2024-11-14
*
------------------------------------------------------------------------------ */
/**
* @param {number} n
* @param {number[]} quantities
* @return {number}
*/
var minimizedMaximum = function (n, quantities) {
let left = 1,
right = quantities.reduce((acc, cur) => Math.max(acc, cur))

let answer = 0

while (left <= right) {
const mid = Math.floor((left + right) / 2)

if (quantities.reduce((acc, cur) => acc + Math.ceil(cur / mid), 0) <= n) {
answer = mid
right = mid - 1
} else {
left = mid + 1
}
}

return answer
}

console.log()