CodingTest Exam/[C++] Algorithm Study
74. 최소힙(priority_queue : 우선순위 큐) (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★☆☆☆☆
HongongHB
2023. 8. 21. 14:37
#include <stdio.h>
#include <queue>
using namespace std;
int main()
{
int n;
priority_queue<int> pQ;
queue<int> Q;
while(true)
{
scanf("%d", &n);
if(n == 0)
{
if(pQ.empty())
printf("%d", -1);
else
{
Q.push(-pQ.top());
pQ.pop();
}
}
else if(n == -1)
{
while(!Q.empty())
{
printf("%d\n", Q.front());
Q.pop();
}
break;
}
else
{
pQ.push(-n);
}
}
return 0;
}
1. 최소힙의 경우에는 우선순위 큐에 넣을 때 부호를 바꿔서 넣고 꺼낼 때도 부호를 바꿔서 꺼낸다.