最小费用流小结

来源:互联网 发布:易语言 网页游戏优化 编辑:程序博客网 时间:2024/04/29 08:54

最近小刷了一下最小费用流,久违的小结一下。

最小费用流常见的有两种算法:

一种是常用的连续最短路算法。

另一种是消负圈算法(任意求出一个流,然后不断消去负圈而得到的最小费用流),这种只看到poj 2175 有相关的应用,而且只是求次优,求完整的最小费用流还是第一种好。

最小费用流中,模板都是固定的,关键在于如何建图。

建图过程在于如何将问题如何抽象出来,最小费用流只有两个特点:一是费用,二是流量;

流量一般是将题目中的限制条件进行抽象(比如只能(或者做多)通过k次),这种情况下只要连一条流量为k的边就好。

拆点是最小费用流里特别常见的一种建图手段。我所知的拆点一般有以下几种情况:

    1.将点的权值作为费用的时候,题目要求点只能过一次,此时需将一个点拆成两个点,流量为1.

    2.同一个点需要与不同性质的点连接的时候.

1 0
原创粉丝点击