摘要: 公共祖先: 在一棵有根树上,若节点 F 是节点 x 的祖先,也是节点 y 的祖先,那么称 Fxy 的公共祖先。 最近公共祖先(LCA): 在 xy 的所有公共祖先中,深度最大的称为最近公共祖先,记为 \(LCA(x,y 阅读全文
posted @ 2024-06-10 08:32 RonChen 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 树状数组(Binary Indexed Tree,BIT)是一种用于维护 n 个元素的前缀信息的数据结构。 以前缀和为例,对于数列 a,可以将其存储为前缀和数组 s 的形式,其中 si=j=1iaj。那么通过前缀和数组,就可以 阅读全文
posted @ 2024-06-10 08:31 RonChen 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 树上前缀和 设 sumi 表示根节点到节点 i 的权值总和。 则有: 对于点权,x,y 路径上的和为 sumx+sumysumlcasumfalca。 对于边权,x,y 路径上的和为 \(sum_x + sum_y - 阅读全文
posted @ 2024-06-10 08:26 RonChen 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 倍增法与二分法是“相反”的算法,二分法是每次缩小一半,从而以 O(logn) 的速度快速缩小定位到解;倍增法是每次扩大一倍,从而以 O(2n) 的速度快速地扩展到解空间。 倍增就是“成倍增长”,很多时候倍增的实现利用的是二进制本身的倍增特性。把一个数 n 用二进制展开, 阅读全文
posted @ 2024-06-10 08:21 RonChen 阅读(183) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示