문제
코드
#include <vector>
#include <queue>
using namespace std;
int solution(vector<int> scoville, int K) {
int answer = -1;
priority_queue<int, vector<int>, greater<int>> qu(scoville.begin(), scoville.end());
while(!qu.empty())
{
int scovilleValue = qu.top();
qu.pop();
if (scovilleValue < K)
{
if (qu.empty())
answer++;
else
{
qu.push(scovilleValue + (qu.top() * 2));
qu.pop();
answer++;
}
}
if (qu.empty() && scovilleValue < K)
return -1;
}
return answer + 1;
}
'코딩테스트' 카테고리의 다른 글
[코딩테스트] 프린터 (0) | 2021.09.12 |
---|---|
[코딩테스트] 숫자 문자열과 영단어 (0) | 2021.09.08 |
[코딩테스트] 오픈채팅방 (0) | 2021.08.26 |
[코딩테스트] 카펫 (0) | 2021.08.22 |
[코딩테스트] 타겟 넘버 (0) | 2021.08.20 |