502. IPO
Description
Suppose LeetCode will start its IPO soon. In order to sell a good price of its shares to Venture Capital, LeetCode would like to work on some projects to increase its capital before the IPO . Since it has limited resources, it can only finish at most k distinct projects before the IPO . Help LeetCode design the best way to maximize its total capital after finishing at most k distinct projects.
You are given n projects where the i^th project has a pure profit profits[i] and a minimum capital of capital[i] is needed to start it.
Initially, you have w capital. When you finish a project, you will obtain its pure profit and the profit will be added to your total capital.
Pick a list of at most k distinct projects from given projects to maximize your final capital , and return the final maximized capital.
The answer is guaranteed to fit in a 32-bit signed integer.
Example 1:
1 | Input: k = 2, w = 0, profits = [1,2,3], capital = [0,1,1] |
Example 2:
1 | Input: k = 3, w = 0, profits = [1,2,3], capital = [0,1,2] |
Constraints:
1 <= k <= 10^50 <= w <= 10^9n == profits.lengthn == capital.length1 <= n <= 10^50 <= profits[i] <= 10^40 <= capital[i] <= 10^9
Hints/Notes
- 2025/03/08 Q3
- priority queue
- Leetcode solution
Solution
Language: C++
1 | class Solution { |