문제 oj.uz/problem/view/JOI19_cake3 문제 보기 - Cake 3 (JOI19_cake3) :: oj.uz 문제 보기 - Cake 3 (JOI19_cake3) oj.uz N개의 케이크 조각이 있고, 이중 M개를 뽑아 적당히 배열하여 $\sum_{i=1}^{M}V_i-\sum_{i=1}^{M}|C_i-C_{i+1}|$값을 최대화해야 한다. $M1; node->lc=new Node(); node->rc=new Node(); makeTree(node->lc, tl, mid); makeTree(node->rc, mid+1, tr); } Node *addTree(Node *node, int tl, int tr, int pos) { if(poscnt+1; ret->sum=node->sum+co..
https://blog.myungwoo.kr/100 https://cubelover.tistory.com/14 PST는 N개의 세그먼트 트리를 만드는데, 전체 공간 복잡도가 $O(NlogN)$ 인 자료구조이다. 앞의 세그먼트 트리에서 하나의 값만 변화하는 새로운 세그먼트 트리를 만들기 위해서는 원래 세그먼트 트리의 대부분의 노드들을 재활용하고 새롭게 값이 바뀐 부분의 노드들만 변화시켜주면 된다. 이러한 이유로, 보통 2D 점 관리를 위한 자료구조로 Merge Sort Tree 와 함께 사용된다. 또한, Persistent 하게 구현되어, 수정이 불가능하다는 단점이 있다. struct Node { int val; Node *lc, *rc; Node() : val(0), lc(NULL), rc(NULL) {..
- Total
- Today
- Yesterday
- Fenwick Tree
- Floyd-Warshall
- Centroid Decomposition
- stack
- Greedy
- Lazy Propagation
- Codeforces
- graph
- DFS
- APIO
- ⭐
- Union Find
- Segment Tree
- DP
- Shortest path
- Merge Sort
- BOJ
- Persistent Segment Tree
- Parametric Search
- Interactive
- Sqrt Decomposition
- tree
- CHT
- HLD
- offline
- convex hull
- ioi
- Divide & Conquer
- Sparse Table
- Line sweeping
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |