Java | Leetcode Java题解之第502题IPO

题目:

题解:

java 复制代码
class Solution {
    public int findMaximizedCapital(int k, int w, int[] profits, int[] capital) {
        int n = profits.length;
        int curr = 0;
        int[][] arr = new int[n][2];

        for (int i = 0; i < n; ++i) {
            arr[i][0] = capital[i];
            arr[i][1] = profits[i];
        }
        Arrays.sort(arr, (a, b) -> a[0] - b[0]);

        PriorityQueue<Integer> pq = new PriorityQueue<>((x, y) -> y - x);
        for (int i = 0; i < k; ++i) {
            while (curr < n && arr[curr][0] <= w) {
                pq.add(arr[curr][1]);
                curr++;
            }
            if (!pq.isEmpty()) {
                w += pq.poll();
            } else {
                break;
            }
        }

        return w;
    }
}
相关推荐
黛色正浓1 分钟前
leetCode-热题100-普通数组合集(JavaScript)
java·数据结构·算法
元亓亓亓5 分钟前
LeetCode热题100--5. 最长回文子串--中等
linux·算法·leetcode
月明长歌5 分钟前
Java多线程线程池ThreadPoolExecutor理解总结:6 个核心参数 + 4 种拒绝策略(附完整示例)
java·开发语言
找不到、了5 分钟前
JVM 跨代引用与 Card Table 机制
java·jvm
sunywz8 分钟前
【JVM】(2)java类加载机制
java·jvm·python
千金裘换酒9 分钟前
LeetCode 环形链表+升级版环形链表
算法·leetcode·链表
进阶小白猿13 分钟前
Java技术八股学习Day13
java·jvm·学习
CodeAmaz20 分钟前
ConcurrentHashMap(JDK 7/8)详细介绍
java·hashmap·线程安全map
大猫和小黄21 分钟前
Tomcat vs Undertow 全面对比
java·tomcat
霍田煜熙38 分钟前
【无标题】
java