https://www.acmicpc.net/problem/11279
문제
풀이
그냥 간단하게 우선순위큐로 구현하여 풀 수 있다.
다만 시간초과가 계속나서 신경을 써야한다.. 시간제한 1초라니
C++ 개행을 endl로 해도 시간초과가 날정도로 짧다.
아래는 코드이니 참조하자.
Code ( C++ )
#include <iostream>
#include <queue>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
priority_queue<int, vector<int>> pq;
int N;
cin >> N;
for (int i = 0; i < N; i++)
{
int x;
cin >> x;
if (x == 0)
{
if (pq.empty())
cout << 0 << "\n";
else
{
cout << pq.top() << "\n";
pq.pop();
}
}
else
pq.push(x);
}
}
'💻 OnlineJudge > Baekjoon' 카테고리의 다른 글
[백준 / BOJ] C++ 1992 쿼드트리 (0) | 2023.03.04 |
---|---|
[백준 / BOJ] C++ 1780 종이의 개수 (0) | 2023.03.04 |
[백준 / BOJ] C++ 1764 듣보잡 (0) | 2023.03.04 |
[백준 / BOJ] C++ 1676 팩토리얼 0의 개수 (0) | 2023.02.01 |
[백준 / BOJ] C++ 1463 1로 만들기 (0) | 2023.01.10 |