본문 바로가기

하루하나코딩

백준 11279 : 최대 힙 c++

코드

#include <iostream>
#include <queue>

using namespace std;

int main(){
	
	ios_base::sync_with_stdio(0);
	cin.tie(0);
    cout.tie(0);
    
	int n;
	cin >> n;
	
	priority_queue<int> pq;
	int a;
	for(int i = 0; i < n; i++){
		cin >> a;
		if(a == 0){
			if(pq.empty()){
				cout << "0" << "\n";
				continue;
			}
			else{
				cout << pq.top() << "\n";
				pq.pop();
			}
		}
		else{
			pq.push(a);
		}
	}
	
	return 0;
}

알게된 점

그냥 priority queue로 풀면 된다.

나중에 최대힙을 구조체로 구현한번 해봐야겠다.

ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);

이거 꼭 써야 시간초과가 안난다.

'하루하나코딩' 카테고리의 다른 글

백준 1043 : 거짓말 c++  (0) 2023.04.13
백준 1927 : 최소 힙 c++  (0) 2023.04.12
백준 14500 : 테트로미노 c++  (0) 2023.04.12
백준 1748 : 수 이어 쓰기 (1) c++  (0) 2023.04.12
백준 4375 : 1 c++  (0) 2023.04.12