목차

구간 쿼리

테크닉

오일러 경로 테크닉

Heavy Light Decomposition

오프라인 쿼리

쿼리 종류별 해결 방법

구간 합

업데이트 쿼리가 없는 경우

포인트 업데이트 쿼리가 있는 경우

구간 업데이트 쿼리가 있는 경우

계차수열 트릭

활용 - Order Statistic Tree로 사용하기

활용 - 인버전 카운팅

[to be filled..]

구간 XOR

관련 문제

구간 최솟값

쿼리 중간에 업데이트가 있는 경우

쿼리 중간에 업데이트가 없는 경우

최대 부분합

구간 Rank 쿼리

머지소트 트리

Persistent segment tree

오프라인 쿼리 + Order Statistic Tree

관련 문제

구간 k-th 쿼리

그 외의 쿼리들

관련 자료 구조

[To be Filled]

누적합 (prefix sum)

세그먼트 트리

Lazy propagation

구현

펜윅 트리

구간 업데이트를 지원하는 활용

구현

구간 최솟값을 지원하는 활용

속도

번호 제목 n q 내 기록 (teflib) 1등 기록
2042 구간 합 구하기 1,000,000 20,000 1000ms 760ms
16978 수열과 쿼리 22 100,000 100,000 820ms 820ms
18436 수열과 쿼리 38 100,000 100,000 692ms 664ms
2268 수들의 합 1,000,000 1,000,000 5964ms 5300ms

최적화 시도

Treap

Splay tree