https://www.acmicpc.net/problem/1927
๋ฌธ์
๋๋ฆฌ ์ ์๋ ค์ง ์๋ฃ๊ตฌ์กฐ ์ค ์ต์ ํ์ด ์๋ค. ์ต์ ํ์ ์ด์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ ์ฐ์ฐ์ ์ง์ํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
- ๋ฐฐ์ด์ ์์ฐ์ x๋ฅผ ๋ฃ๋๋ค.
- ๋ฐฐ์ด์์ ๊ฐ์ฅ ์์ ๊ฐ์ ์ถ๋ ฅํ๊ณ , ๊ทธ ๊ฐ์ ๋ฐฐ์ด์์ ์ ๊ฑฐํ๋ค.
ํ๋ก๊ทธ๋จ์ ์ฒ์์ ๋น์ด์๋ ๋ฐฐ์ด์์ ์์ํ๊ฒ ๋๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ฐ์ฐ์ ๊ฐ์ N(1 ≤ N ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ N๊ฐ์ ์ค์๋ ์ฐ์ฐ์ ๋ํ ์ ๋ณด๋ฅผ ๋ํ๋ด๋ ์ ์ x๊ฐ ์ฃผ์ด์ง๋ค. ๋ง์ฝ x๊ฐ ์์ฐ์๋ผ๋ฉด ๋ฐฐ์ด์ x๋ผ๋ ๊ฐ์ ๋ฃ๋(์ถ๊ฐํ๋) ์ฐ์ฐ์ด๊ณ , x๊ฐ 0์ด๋ผ๋ฉด ๋ฐฐ์ด์์ ๊ฐ์ฅ ์์ ๊ฐ์ ์ถ๋ ฅํ๊ณ ๊ทธ ๊ฐ์ ๋ฐฐ์ด์์ ์ ๊ฑฐํ๋ ๊ฒฝ์ฐ์ด๋ค. x๋ 231๋ณด๋ค ์์ ์์ฐ์ ๋๋ 0์ด๊ณ , ์์ ์ ์๋ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง์ง ์๋๋ค.
์ถ๋ ฅ
์ ๋ ฅ์์ 0์ด ์ฃผ์ด์ง ํ์๋งํผ ๋ต์ ์ถ๋ ฅํ๋ค. ๋ง์ฝ ๋ฐฐ์ด์ด ๋น์ด ์๋ ๊ฒฝ์ฐ์ธ๋ฐ ๊ฐ์ฅ ์์ ๊ฐ์ ์ถ๋ ฅํ๋ผ๊ณ ํ ๊ฒฝ์ฐ์๋ 0์ ์ถ๋ ฅํ๋ฉด ๋๋ค.
ํ์ด
#include <iostream>
#include <queue>
using namespace std;
int main() {
ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
priority_queue<int, vector<int>, greater<int>> q;
int n, x;
cin >> n;
while(n--) {
cin >> x;
if(x==0) {
if(q.empty())
cout << 0 << "\n";
else {
cout << q.top() << "\n";
q.pop();
}
} else {
q.push(x);
}
}
return 0;
}
'๐ BOJ > Class 3' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ][C++] ๋ฐฑ์ค 14940๋ฒ: ์ฌ์ด ์ต๋จ๊ฑฐ๋ฆฌ (Silver I) (0) | 2024.11.02 |
---|---|
[BOJ][C++] ๋ฐฑ์ค 1676๋ฒ: ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ (0) | 2023.04.19 |
[BOJ][C++] ๋ฐฑ์ค 11403๋ฒ: ๊ฒฝ๋ก ์ฐพ๊ธฐ (0) | 2023.04.10 |
[BOJ][C++] ๋ฐฑ์ค 1389๋ฒ: ์ผ๋น ๋ฒ ์ด์ปจ์ 6๋จ๊ณ ๋ฒ์น (0) | 2023.04.03 |
[BOJ][C++] ๋ฐฑ์ค 9375๋ฒ: ํจ์ ์ ์ ํด๋น (0) | 2023.03.31 |