URL
https://onlinejudge.u-aizu.ac.jp/problems/3118
解法
定期重构,假设每块的大小是 \(S\):
- 块内询问只有 \(O(S)\) 个不同的端点
- 对相邻端点间建一个支持快速查询的数据结构(按照 \(B_i-A_i\) 排序,算前后缀最小值)
- 暴力更新
复杂度 \(O(N \sqrt{Q} \log{N})\)。
https://onlinejudge.u-aizu.ac.jp/problems/3118
定期重构,假设每块的大小是 \(S\):
复杂度 \(O(N \sqrt{Q} \log{N})\)。