随笔分类 -  图论:树论

摘要:树上操作太薄弱了,根本想不出来。 思路: 首先自定义根做一遍dfs,求出sz数组,sz[i]表示i的子树大小。 在做第二遍dfs,对每一个点进行尝试,看能否为根。 当 x 点为根转移到 y 点为根时,sz发生变化, sz[x] -= sz[y] sz[y] += n - sz[y] 然后进行下一步搜 阅读全文
posted @ 2023-01-30 20:30 Vegdie 阅读(30) 评论(0) 推荐(0) 编辑
摘要:此题来到LCA较高等级运用。 这道题需要自己花一些树玩玩。 找到一些性质: 三个点的lca一定至少有两个是一样的;更多证明 集合点就是不相同的点; 同时还要会求树上距离 这里 x,y,z 是三个人,l 是重复lca,p 就是集合点。那么距离就是 $dep(y)-dep(p)+dep(z) 阅读全文
posted @ 2023-01-26 10:25 Vegdie 阅读(26) 评论(0) 推荐(0) 编辑
摘要:树上任意两节点之间最长的简单路径即为树的「直径」。记 δ(s,t) 为树的真实直径。 算法1,两遍dfs 首先从任意节点 y 开始进行第一次 DFS,到达距离其最远的节点,记为 z,然后再从 z 开始做第二次 DFS,到达距离 z 最远的节点,记为 z,则 即为 阅读全文
posted @ 2022-12-26 13:14 Vegdie 阅读(361) 评论(0) 推荐(0) 编辑

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