题目:
题解:
class Solution:def findMaximizedCapital(self, k: int, w: int, profits: List[int], capital: List[int]) -> int:if w >= max(capital):return w + sum(nlargest(k, profits))n = len(profits)curr = 0arr = [(capital[i], profits[i]) for i in range(n)]arr.sort(key = lambda x : x[0])pq = []for _ in range(k):while curr < n and arr[curr][0] <= w:heappush(pq, -arr[curr][1])curr += 1if pq:w -= heappop(pq)else:breakreturn w