2018.10.15 NOIP训练 水流成河(换根dp)

时间:2023-03-09 05:07:11
2018.10.15 NOIP训练 水流成河(换根dp)

传送门

换根dp入门题。


貌似李煜东的书上讲过?

不记得了。

先推出以1为根时的答案。

然后考虑向儿子转移。

我们记f[p]f[p]f[p]表示原树中以ppp为根的子树的答案。

g[p]g[p]g[p]表示把根换成ppp时整棵树的答案。

于是有g[v]=f[v]+min(g[p]−min(e[i].c,f[v]),e[i].c)g[v]=f[v]+min(g[p]-min(e[i].c,f[v]),e[i].c)g[v]=f[v]+min(g[p]−min(e[i].c,f[v]),e[i].c)

注意边界之后就能过了。

代码