摘要: 这里是一种动态点分治的解法(不过听说树剖+主席树更快?)。 首先先考虑除去年龄的限制这道题怎么做。也就是给你一棵树,每次询问一个点到所有其他点的距离和。 由于路径问题不太关系树的形态,并且问的又是一个点和整棵树之间的关系,所以可以考虑动态点分治: 每个点保存它在点分树内的子树的信息 设$dis1[i 阅读全文
posted @ 2020-04-20 09:41 With_penguin 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 换根DP get!之前Hygebra巨佬跟我讲过一遍,当时听懂了可惜后来忘了。。。昨天问了Binary_Search_Tree一道动态点分治的弱化版被换根DP吊锤了。。。 这里引用一下 "树形dp换根" 里对换根DP的总结,个人认为非常清楚: _以下为引用_ 换根解决的是“不定根”的树形dp问题。该 阅读全文
posted @ 2020-04-20 08:17 With_penguin 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 这题用换根DP非常好处理。 先用$1$为根树形DP出第一个把$1$号点变成黑点所得到的贡献。然后发现若$x$的答案为$a[x]$且$v$为$x$的子节点,那么$a[v]=a[x]+n 2 \times siz[v]$(换根过程)。 然后对每个点的答案去一个最大值就好了。 代码: 阅读全文
posted @ 2020-04-20 08:16 With_penguin 阅读(76) 评论(0) 推荐(0) 编辑