Algorithm/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๋” ๋งต๊ฒŒ

giraffe_ 2022. 6. 5. 11:29

https://programmers.co.kr/learn/courses/30/lessons/42626

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋” ๋งต๊ฒŒ

๋งค์šด ๊ฒƒ์„ ์ข‹์•„ํ•˜๋Š” Leo๋Š” ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์Œ์‹์˜ ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๋ฅผ K ์ด์ƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด Leo๋Š” ์Šค์ฝ”๋นŒ ์ง€์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ์€ ๋‘ ๊ฐœ์˜ ์Œ์‹์„ ์•„๋ž˜์™€ ๊ฐ™

programmers.co.kr

 

 

 

 

 

์šฐ์„ ์ˆœ์œ„ํ๊ฐ€ ํž™์„ ์ด์šฉํ•ด์„œ ๊ตฌํ˜„์„ ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค. ์›์†Œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ๋งˆ๋‹ค ๊ฐ’์„ ์ •๋ ฌ์„ ํ•ด์ค€๋‹ค.

์ด ๋ฌธ์ œ๋Š” ์šฐ์„ ์ˆœ์œ„ํ๋ฅผ ์จ์•ผ ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

 

 

 

 

 

์ฝ”๋“œ

import java.util.*;

class Solution {
    public int solution(int[] scoville, int K) {
        PriorityQueue<Integer> pq = new PriorityQueue<>();
        
        for(int i : scoville) {
            pq.add(i);
        }
        
        int answer = 0;
        while(pq.peek() < K) {
            if(pq.size() == 1) {
                return -1;
            }
            
            int mix = pq.poll() + (pq.poll() * 2);
            answer++;
            
            pq.add(mix);
        }
        
        return answer;
    }
}

 

 

 

 

 

 

์ฐธ๊ณ 

PriorityQueue(์šฐ์„ ์ˆœ์œ„ํ) : https://coding-factory.tistory.com/603

 

[Java] PriorityQueue(์šฐ์„ ์ˆœ์œ„ ํ) ํด๋ž˜์Šค ์‚ฌ์šฉ๋ฒ• & ์˜ˆ์ œ ์ด์ •๋ฆฌ

์šฐ์„ ์ˆœ์œ„ ํ(Priority Queue)๋ž€? ์ผ๋ฐ˜์ ์œผ๋กœ ํ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์Œ“์•„๋‘๊ธฐ ์œ„ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ์Šคํƒ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ FIFO(First In First Out)์˜ ๊ตฌ์กฐ ์ฆ‰ ๋จผ์ € ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ๊ฐ€ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค

coding-factory.tistory.com

 

ํ’€์ด : https://jar100.tistory.com/18

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๋” ๋งต๊ฒŒ (java)

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์•Œ๊ณ ๋ฆฌ์ฆ˜ (java) ๋” ๋งต๊ฒŒ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (๋” ๋งต๊ฒŒ) ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋ฐฐ์—ด์ค‘ ๊ฐ’(์Šค์ฝ”๋นŒ ์ง€์ˆ˜)์ด ๊ฐ€์žฅ ๋‚ฎ์€ ๋‘๊ฐœ์˜ ์Œ์‹์„ ์กฐ๊ฑด ( a + b*2) ์— ๋งž์ถฐ ๊ณ„์‚ฐํ•ด ๋ชจ๋“  ๋ฐฐ์—ด์˜ ๊ฐ’์ด k ์ด์ƒ์ด ๋˜๊ฒŒ ๋งŒ๋“ค์–ด

jar100.tistory.com