摘要: 发现可以直接建立虚树。 设 \(dp_{u,0/1/2}\) 表示第 \(u\) 个节点的子树内,所有选中节点到它的距离之和/选中节点中到它的最短距离/选中节点中到它的最长距离,\(as_{u,0/1/2}\) 则代表对于这个子树,题目所问问题的三个答案,\(i1,i2\) 分别为使 \(dp_{u 阅读全文
posted @ 2024-04-20 20:28 长安一片月_22 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 基环树算法总结 一、什么是基环树 基环树,顾名思义,有两个要素:环和树。 因此,基环树就是一棵树的一个节点,扩成一个环,做题时,多棵基环树组成的基环树森林,常以如下方式出现: 每个点只有一个出边。 每个点只有一个入边。 图中一共有 \(n\) 个点,\(n\) 条边。 那么,基环树类型的题目应该怎么 阅读全文
posted @ 2024-04-20 11:23 长安一片月_22 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 基环内向树上 dp,不过在这里提供给一种非典型做法。 考虑将环上的每一条边都断开,这样就会形成多棵树,先在这些树上进行树形 \(dp\)。设 \(dp_{i,0/1}\) 表示不选/选 \(i\) 时,\(i\) 子树内的最大选点数。明显方程为: \[\begin{cases}dp_{u,0}=\s 阅读全文
posted @ 2024-04-20 10:20 长安一片月_22 阅读(4) 评论(0) 推荐(0) 编辑