摘要: 简介 最近公共祖先 $lca(a,b)$ 指的是a到根的路径和b到n的路径的深度最大的公共点. 定理. 以 $r$ 为根的树上的路径 $(a,b) = (r,a) + (r,b) 2 (r,fa(lca))$. (树上差分) 求法 tarjan 离线算法, 总时间 $O(n+q)$. (q表示询问次 阅读全文
posted @ 2019-01-12 17:31 Ubospica 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 简介 CDQ分治是分治的一种, 可以看做归并排序的扩展, 利用离线将一些 $O(n)$ 的暴力优化到 $O(log n)$. 它可以用来顶替一些高级(log)数据结构等. 一般地, CDQ分治分为三部分: 1. 递归左右区间 1. 统计左区间对右区间的贡献 1. 合并整个区间 或者: 1. 递归左右 阅读全文
posted @ 2019-01-12 17:15 Ubospica 阅读(146) 评论(0) 推荐(0) 编辑