Minimum Initial Energy to Finish Tasks LeetCode solution in Python

1
class Solution:
2
def minimumEffort(self, tasks: List[List[int]]) -> int:
3
tasks.sort(key=lambda x: x[0] - x[1])
4

5
def ok(mid):
6
for actual, minimum in tasks:
7
if minimum > mid or actual > mid:
8
return False
9
if minimum <= mid:
10
mid -= actual
11
return True
12

13
l, r = 0, 10**9
14
while l <= r:
15
mid = (l + r) // 2
16
if ok(mid):
17
r = mid - 1
18
else:
19
l = mid + 1
20
return l

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0