首先有一个结论 每个点只存在于一个环中,所以入度和出度都为1,而且其逆命题也成立。
拆点,S向入点连边容量为1,出点向T连边容量为1,向四联通的点连边容量为1费用为1。(如果是原来就有的箭头则费用为0)
这样,流最大时,每个点恰好入度和出度均为一。
并不是很想写,口胡一下算了,毕竟代码复杂度堪比普及,难点在于想法。
bzoj3171
最新推荐文章于 2019-03-29 17:37:40 发布
首先有一个结论 每个点只存在于一个环中,所以入度和出度都为1,而且其逆命题也成立。
拆点,S向入点连边容量为1,出点向T连边容量为1,向四联通的点连边容量为1费用为1。(如果是原来就有的箭头则费用为0)
这样,流最大时,每个点恰好入度和出度均为一。
并不是很想写,口胡一下算了,毕竟代码复杂度堪比普及,难点在于想法。