[210702][백준/BOJ] 11279번 최대 힙

KeonWoo Kim·2021년 7월 2일
0

알고리즘

목록 보기
78/84

문제

입출력

풀이

우선순위 큐 (priority_queue) 를 이용해서 문제를 풀 수 있다.

백준 1927은 작은 값부터 출력하는 문제이며 백준 11279는 큰 값부터 출력하는 문제이다.

https://blockdmask.tistory.com/107
위 링크를 보면 우선순위 큐의 선언 방식을 알 수 있다.
우선순위 큐는 내림차순으로 쌓이는게 default이며
priority_queue<int> pq;
로 선언해주면 큰 값부터 출력이 가능하다.

코드

#include <bits/stdc++.h>
using namespace std;

int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);

	int n;
	cin >> n;
	priority_queue<int> pq;

	while (n--)
	{
		int num;
		cin >> num;

		if (num != 0)
			pq.push(num);
		else
		{
			if (pq.empty())
				cout << 0 << '\n';
			else
			{
				cout << pq.top() << '\n';
				pq.pop();
			}
		}
	}
}
profile
안녕하세요

0개의 댓글

관련 채용 정보