레야몬
[C++언어] 11279번 최대 힙 - 우선순위 큐 본문
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
using namespace std;
priority_queue<int, vector<int>, less<int>> max_pq; //최대 트리
int N, x; //연산의 개수, 정수 x
int main()
{
ios_base::sync_with_stdio(false); //동기화
cin.tie(NULL); cout.tie(NULL);
cin >> N;
for(int i=0; i<N; i++) {
cin >> x;
if(!x) {
if(max_pq.empty()) //큐가 비어있을 경우 0 출력
cout << "0\n";
else {
cout << max_pq.top() << '\n'; //최솟값 출력 후 제거
max_pq.pop();
}
}
else
max_pq.push(x); // 큐에 새로운 값 저장
}
return 0;
}
바로 앞 문제가 C++ 최대 최소 우선순위 큐 문제라서 간단하게 풀었다. 진짜 C++로 알고리즘으로 하니가 너무 편해서 다시는 C언어로 못 돌아갈 것만 같은 느낌이 든다. 왜 이렇게 편하지..?
<priority queue>
[C++ STL] Priority_queue 사용법
본 글은 여러 PS 문제를 접하다 보면 우선순위 큐를 적극적으로 사용해야 되는 경우가 있는데 매번 구글링을 하게 되는 것 같아 우선순위 큐에 대한 기본적인 사용법뿐만 아니라 기본적인 자료
kbj96.tistory.com
※현재 고등학교 등교중인 학생입니다. 이제 알고리즘을 본격적으로 공부하기 시작해서 아직 초보입니다. 혹시 제가 잘못 알고있는 점이나 더 좋은 풀이 방법이 있어 댓글에 남겨주시면 감사히 하나하나 열심히 읽어보겠습니다. 좋아요, 단순한 댓글 한마디라도 저에겐 큰 힘이 됩니다! 감사합니다.
'알고리즘 > 백준' 카테고리의 다른 글
[C++] 11723번 집합 - 집합 (0) | 2022.08.30 |
---|---|
[C++] 11399번 ATM - 정렬 (0) | 2022.08.30 |
[C++] 7662번 이중 우선순위 큐 - 우선순위 큐, 트리 (0) | 2022.08.29 |
[C언어] 9095번 1, 2, 3 더하기 - DP (0) | 2022.08.29 |
[C언어] 7576번 토마토 - 그래프 이론, BFS (0) | 2022.08.26 |
Comments