https://www.acmicpc.net/problem/14235
14235번: 크리스마스 선물
크리스마스에는 산타가 착한 아이들에게 선물을 나눠준다. 올해도 산타는 선물을 나눠주기 위해 많은 노력을 하고 있는데, 전세계를 돌아댕기며 착한 아이들에게 선물을 나눠줄 것이다. 하지만
www.acmicpc.net
의욕이안나도해야되는게있는거다...
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
//최대히프
priority_queue<int, vector<int>>pq;
int solution(int a) {
int res = 0;
//갖고있는 것들 중에 가장 큰 수(top)출력하고 제거
if (a == 0) {
//없으면 -1
if (pq.empty()) {
res = -1;
}
else {
res = pq.top();
pq.pop();
}
}
//0이 안 들어오면 출력하지 말아야하니까 -2를 리턴하고 메인함수에서 출력 안하게 설정
else {
//a개의 선물을 pq에 큰 것부터 저장
for (int i = 0; i < a; i++) {
int gift;
cin >> gift;
pq.push(gift);
}
res = -2;
}
return res;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
int n, a;
cin >> n;
for (int i = 0; i < n; i++) {
cin >> a;
int res = solution(a);
if (res != -2) {
cout << res << "\n";
}
}
return 0;
}
'알고리즘' 카테고리의 다른 글
BOJ: 계단 오르기(2679) [C++] (0) | 2024.03.30 |
---|---|
BOJ: 톱니바퀴(2)(15662) [C++] (0) | 2024.03.28 |
BOJ: 꽃길(14620) [C++] (0) | 2024.03.12 |
BOJ: 피보나치 함수(1003) [C++] (0) | 2024.03.07 |
BOJ: 프린터 큐(1966) [C++] (0) | 2024.03.06 |