일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- BFS
- lazy propagation
- dfs
- NEXT
- 크루스칼
- 조합론
- 다익스트라
- 백트래킹
- 세그먼트 트리
- 알고리즘
- dropout
- 문자열
- 자바스크립트
- 미래는_현재와_과거로
- back propagation
- 플로이드 와샬
- object detection
- 이분 탐색
- c++
- 분할 정복
- 너비 우선 탐색
- 우선 순위 큐
- 가끔은_말로
- pytorch
- DP
- tensorflow
- 회고록
- Overfitting
- 2023
- 가끔은 말로
Archives
- Today
- Total
목록priority queue (1)
Doby's Lab

입력값을 넣을 때마다 즉각적으로 정렬을 시키면 되는 문제가 아닐까를 생각했지만 정렬의 시간 복잡도 O(NlogN), 연산의 최대 개수가 1,000,000이므로 이는 시간 초과를 발생시킨다. 즉, 이번 문제에서는 우선순위 큐(priority queue)의 사용을 유도한다. 큐의 특성상 pop(D)를 할 때는 앞에서 밖에 할 수 없기 때문에 두 개의 우선순위 큐를 선언해주었다. 오름차순과 내림차순. 두 개의 큐를 선언하여 풀었던 코드는 다음과 같다. #include #include #include #include #define ll long long using namespace std; int main() { int T; cin >> T; for (int i = 0; i < T; i++) { int n; c..
PS/BOJ
2021. 10. 21. 12:21