https://www.acmicpc.net/problem/11279
그래,,, 내가 간단하게 풀리가 없지
시간초과로 또 애를 먹었다^^;;;
일단 문제자체는 우선순위큐로 해결할 수 있었다.
(그냥 priority_queue사용하면됨)
#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
using namespace std;
int main() {
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
int n;
cin >> n;
priority_queue<int> maxheap;
for (int i = 0; i < n; i++) {
int num;
cin >> num;
int answer = 0;
if (num == 0) {
if (!(maxheap.empty())) {
answer = maxheap.top();
maxheap.pop();
}
cout << answer << '\n';
}
else {
maxheap.push(num);
}
}
return 0;
}
시간초과는 C/C++의 빠른입출력과 관련된 부분에서 나왔다.
https://usowelcome.tistory.com/64
c++ 빠른 입출력 (시간초과일때 고려해보기)
분명 알고리즘 적으로는(?) 문제가 없어보이는데시간초과가 나오면??=> 입출력 단계에서 뭔가 문제가 생겼는지 확인해보자!참고자료https://www.acmicpc.net/blog/view/128 입출력 라이브러리 자체에 차이
usowelcome.tistory.com
이건 처음알았는데...
앞으로 코테에서 시간초과가 나올때 한번 고려해봐야겠다!
난 endl을 엄청 좋아했는데... 충격적이군
프로그래머스 : 정렬 - 가장 큰 수 (0) | 2024.08.01 |
---|---|
99클럽 코테 스터디 8일차 TIL : 카드 뭉치 (0) | 2024.08.01 |
99클럽 코테 스터디 8일차 TIL : 이중우선순위큐 (0) | 2024.07.31 |
99클럽 코테 스터디 7일차 TIL : 더 맵게 (0) | 2024.07.30 |
99클럽 코테 스터디 6일차 TIL : 기능개발 (0) | 2024.07.29 |