Algorithm/백준

[백준] 11279 최대 힙 with C++

nowkoes 2023. 5. 21. 00:00

문제설명


입출력 예제


개념

 주어진 문제는 우선순위 큐의 기본적인 연산을 이해하고 있는지 묻는 문제다. 따라서 우선순위 큐를 최대 힙으로 정렬한 후, 문제의 요구 사항에 맞게 입출력을 조절하면 풀 수 있다. 


풀이

#include <iostream>
#include <queue>
using namespace std;

int main()
{
	ios::sync_with_stdio(false); cin.tie(nullptr);
	int N, n;
	priority_queue<int> pq;

	cin >> N;

	while (N--)
	{
		cin >> n;

		if (n == 0)
		{
			if (pq.empty())
				printf("0\n");

			else
			{
				printf("%d\n", pq.top());
				pq.pop();
			}
		}

		else
			pq.push(n);
	}
}

 특이 사항으로는 시간 초과 문제를 해결하기 위해 c언어 문법을 빌려왔다.

반응형