已完成今日 最小树形图 大学习。

给定有向图,求以 为根的内/外向树的最小边权和


【模板】最小树形图

在图中添加边 ,选到 则无解。

每条边优先指向边权最小的出边。如果成环,就会在之后反悔一条环边改为指向环外。

依次对所有点执行:找到最小出边。如果加上不是环,就加上。否则将整个环缩为一个新点,把所有环上点的出边减去该点环上的边,在合并起来作为新点的出边。

使用左偏树/启发式合并堆加打标记。


最小树形图缩环的过程中形成一颗重构树。

每个环建一个新点,环上点的父亲是新点,边权为该点最小出边的权值。

CF1870H

如果 是关键点, 相关的环可以断开指向 ,即 路径上的边可以不选。

树剖维护。