最小修改边
题目描述:
一棵树,然后每个边都有方向.从中选出来一个点,这个点往其他所有的点流动,不能流的边就改变边的方向.问所有点中最少的修改次数.要求o(n)
题解:
很简单的一个题,但是用到了树形dp常用的一个办法.先随便找一个点,跑一次.之后开始在树上转化,这个转化很简单,每次从父亲到儿子dfs中传一个儿子的值就好了,+1或者-1.
还做过一道两个点的,问最少修改次数.n^2就行.转化成这道题的话:最优一定有一条边不去修改并且不管它能不能跑过去就是不动他.之后会分成两课树.再这样搞就行了.
重点:
树形dp的在树上转化.
代码:
代码比较简单就不发了...