费用流求解二分图最大权匹配
二分图最大权匹配问题:
有 \(n_1\) 个左部点,\(n_2\) 个右部点,\(m\) 条边,边有边权 \(w_i\),表示若选择这条边就会获得 \(w_i\) 的收益,求获得收益最大的一种图的匹配方案。
若考虑用费用流求解,建立超级源点 \(S\) 和超级汇点 \(T\),\(S\) 向每个左部点连边,流量 1 费用 0;每个右部点向 \(T\) 连边,流量 1 费用 0。图中每条边就按照对应点连边,流量 1 费用 \(w_i\),求最大费用最大流。
但这是错误的。因为费用流是在满足最大流的前提下的最大/小花费,而实际问题中可能存在流量更少而费用更大的方案。
为了处理这种方案,我们肯定要构造一组方案使得必定满足最大流的限制,然后就可以考虑费用最大的限制了。将每个左部点向 \(T\) 连边,流量 1 费用 0,代表这个左部点不匹配任何右部点。这样就是正确的了。
但是二分图最大权匹配仍应使用 KM 算法,因为费用流做法与边数有关,导致边数稍大就会 TLE,过不了 UOJ 板子。

浙公网安备 33010602011771号