Finish problem 0410-split-array-largest-sum

This commit is contained in:
Johan Sandoval
2026-07-23 15:08:58 -05:00
parent 25956cc25b
commit 472bd07e11
2 changed files with 35 additions and 0 deletions
@@ -0,0 +1,22 @@
def pieces_needed(nums: list[int], limit: int) -> int:
pieces = 1
total = limit
for num in nums:
if total - num >= 0:
total -= num
else:
total = limit - num
pieces += 1
return pieces
class Solution:
def splitArray(self, nums: list[int], k: int) -> int:
lo, hi = max(nums), sum(nums)
while lo < hi:
limit = (lo + hi) // 2
if pieces_needed(nums, limit) > k:
lo = limit + 1
else:
hi = limit
return lo