-
99클럽 코테 스터디 23일차 TIL / IPO(Leetcode)Study(진행중)/항해99 2024. 8. 14. 01:28
오늘의 학습 키워드
- 알고리즘
- 그리디
- DP
https://leetcode.com/problems/ipo/description/
풀이는 다음과 같다.
import java.util.*; class Solution { class Node { int profit, capital; Node(int _profit, int _capital) { profit = _profit; capital = _capital; } } public int findMaximizedCapital(int k, int w, int[] profits, int[] capital) { int n = profits.length; ArrayList<Node> nodeList = new ArrayList<>(); for (int i = 0; i < n; i++) { nodeList.add(new Node(profits[i], capital[i])); } nodeList.sort((o1, o2) -> o1.capital - o2.capital); PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder()); int profitSum = w, j = 0; for (int i = 0; i < k; i++) { while (j < n && nodeList.get(j).capital <= profitSum) { pq.add(nodeList.get(j).profit); j++; } if (pq.isEmpty()) break; profitSum += pq.poll(); } return profitSum; } }
반응형'Study(진행중) > 항해99' 카테고리의 다른 글
99클럽 코테 스터디 25일차 TIL / 순위(프로그래머스) (0) 2024.08.16 99클럽 코테 스터디 24일차 TIL / 가장 먼 노드(프로그래머스) (0) 2024.08.15 99클럽 코테 스터디 22일차 TIL / Maximal Rectangle(Leetcode) (0) 2024.08.13 99클럽 코테 스터디 14일차 TIL / 운영체제 - 프로세스 (0) 2024.08.05 99클럽 코테 스터디 11일차 TIL + 가장 큰 수(프로그래머스) (0) 2024.08.02