heap2 [알고리즘] 프로그래머스 - 더 맵게(힙) 1. 문제 2. 문제 풀이 스코빌지수가 가장 낮은 2개의 음식을 뽑아서 새로운 음식을 만들어서 우선순위 큐에 계속 넣어주고, 가장 스코빌지수가 낮음 음식이 주어진 K와 같거나 커지면 몇번만에 K 이상으로 만들었는지 반환해주는 간단한 문제였다. 코드를 보면 크게 설명할게 없다는 것을 알 수 있다. import java.util.*; class Solution { PriorityQueue priorityQueue = new PriorityQueue(); int answer = 0; public int solution(int[] scoville, int K) { for(int i=0;i 2020. 8. 18. [알고리즘] 프로그래머스 - 디스크 컨트롤러(힙) 1. 문제 2. 문제 풀이 최대값이나 최소값을 뽑아내는 우선순위큐(힙)를 이용해서 문제를 풀었다. 우선 요청시간과 처리시간을 저장할 수 있도록 Job 클래스를 만들어서 데이터를 저장하게 하였다. Job의 정렬 기준으로는 처리 시간이 더 작은게 앞으로 오게 하였다. waitQueue에는 현재 시간과 비교해서 하나의 작업이 끝났을 때 요청 시간이 현재 시간보다 작거나 같으면 waitQueue에 저장을 하였다. 주어진 jobs 배열을 요청 시간에 대해서 오름차순으로 정렬한다. 모든 job을 waitQueue에 넣고, 대기큐(waitQueue)에 job이 없을때까지 반복문을 실행한다. waitQueue에 작업을 넣지 않았고, 현재 시간이 작업 요청 시간보다 작거나 같으면 waitQueue에 job을 넣어준다. .. 2020. 8. 18. 이전 1 다음