先上个链接:http://www.cnblogs.com/mjtcn/p/8469349.html#4016492
这个链接对模型啊,推导过程都很详细易懂~
对于本题的建图:
先将下限上限设为f;即对u->v,流量为f,则,m[u]+=f,m[v]-=f;
对于c<f:
1)扩容,ans+=f-c,将答案增加到最后的答案里
2)同时增加流量和容量:u->v连capacity=INF,cost=2的边
3)减少流量:
1、减少量小于f-c:v->u连capacity=f-c,cost=0的边,因为可以转化为减少扩容操作
2、减小量大于f-c:v->u连capacity=c,cost=1的边
对于c>f:
1)同时增加流量和容量:u->v连capacity=INF,cost=2的边
2)增加流量:u->v连capacity=c-f,cost=1的边
3)减少流量:v->u连capacity=f,cost=1的边
最后跑最小费用流即可
贴