Processing math: 100%

随笔分类 -  点分治

摘要:题目大意:给你一颗n个节点的树,最初点集S为空。 有m次操作:往当前点集S中加入/删除一个点,询问点x至集合S中任意点的最小距离,回到第t次修改点集的操作后的状态。 数据范围:n,m105 我们先无视这个可持久化的要求,考虑下不可持久化怎么做。 显然考虑动态树分治。 令点v为当前分治中心,u 阅读全文
posted @ 2019-03-19 08:27 AlphaInf 阅读(261) 评论(0) 推荐(1) 编辑
摘要:题目大意:有一棵n个节点的树,点的标号为1n。树中的边有边权。给你m个询问,每个询问包含三个参数l,r,pos,你要求出标号在lr之间的所有点中,到节点pos距离最近的点离pos有多远。 数据范围:n,m,l,r,pos105,强制在线。 此题我强制在 阅读全文
posted @ 2019-02-18 21:19 AlphaInf 阅读(237) 评论(0) 推荐(0) 编辑
摘要:题目大意:给你一棵n个点的树,树边上有边权,对于每一个点,你要求出经过该点的所有的路径中,路径异或和最大的值。 数据范围:n105,边权109。 我们考虑枚举每一条路径,显然这个是会T的,于是我们用点分治来实现这个过程。 对于一棵以x为根的子树,假设它有k个儿子,编号$v1. 阅读全文
posted @ 2018-10-18 21:36 AlphaInf 阅读(189) 评论(0) 推荐(0) 编辑
摘要:题目大意:给你一棵n个点的带权树和正整数K,求每个点到其它所有点距离中第K大的数值。 其中,边权10000n50000。 我们通过原树构建一棵点分治树,令fa[u]u在点分树上的father。 对于每个点u,我们维护两个有序数组fg。 其中$f[ 阅读全文
posted @ 2018-10-16 21:37 AlphaInf 阅读(181) 评论(0) 推荐(0) 编辑
摘要:题目大意:给你一棵n个点的树,每个点有一个点权x,问你所有路径中点权异或和最大的路径的异或和 数据范围:n30000x2311。 如果是边上有点权的话非常简单,直接一个trie就可以水过去了。 然而这题是点权,非常烦人。我们考虑用点分治去解决。 假设当前需要遍历的树 阅读全文
posted @ 2018-07-29 11:20 AlphaInf 阅读(401) 评论(0) 推荐(3) 编辑

点击右上角即可分享
微信分享提示