随笔分类 -  换根法

摘要:题面:https://www.luogu.com.cn/problem/P4220 题意:给出三棵树,求出$dis1(x,y)+dis2(x,y)+dis3(x,y)$最大值。 题解: 首先,列举一下和深度、距离相关的可能用到的算法: 树剖,$dis_x$+$dis_y$ 2 $dis_{lca(x 阅读全文
posted @ 2020-01-10 14:34 Purple_wzy 阅读(179) 评论(0) 推荐(0)
摘要:题面:https://www.luogu.com.cn/problem/CF516D 题意:给定一棵$n$个点的树,边有边权。 定义$f_x$ = $\max_{i=1}^n$ $\text{dist}(x,i)$。 $q$次询问,每次给出一个值$l$,询问树上满足 $\max_{x}$f[x] $ 阅读全文
posted @ 2019-12-26 09:30 Purple_wzy 阅读(346) 评论(0) 推荐(0)
摘要:题面:https://www.luogu.com.cn/problem/P3761 一句话题意:给一棵有边权的树,删一条边并加一条等权边,最小化新树的直径。 题解: 考虑先两边DFS求出树的直径。(不会的请自行百度) 那么我们要删的边一定是直径的某一条边。 证明:如果断的不是直径上的边,那么新直径一 阅读全文
posted @ 2019-12-24 15:33 Purple_wzy 阅读(128) 评论(0) 推荐(0)
摘要:本题主要难点在于如何处理dist^2的问题 40分算法 n^2暴力就不必多嘴,直接枚举根节点DFS就行了。 70分算法 对于b=0的情况,我们可以考虑用换根法来计算根节点的变化对总权值带来的影响。 换根法一般的处理步骤是先以1为根处理出一些信息,然后根据这些信息再做一次DFS。 那这道题要维护哪些信 阅读全文
posted @ 2019-11-23 19:53 Purple_wzy 阅读(183) 评论(0) 推荐(0)