网络流总结

今天做了一天的网络流,也发现了很多有趣(有毒)的建图方法,也算是收获很多了,这里就做个总结吧。

网络流跑的方法大家都会我就不说了,题考察的重点也就是建图。

建图就涉及到2个方面:
1.建点。建点其实就是网络流的难点了,一般点弄好了边也容易了。建点的困难就在于有时要拆点,我总结了一下拆点主要是这几个作用:
a、控制点的通过次数,就是把点的次数用边的流量来限制。
b、化点权为边权。
c、一个点可能会有影响答案的多个状态或情况时要拆,按情况数拆,拆开后每一个代表一种情况。
d、一层一层的拆,用来限制某些条件。

2.连边,这个如果点弄对了,就直接按状态的转移来连就好了,一般比较容易。

几个基础模型:
1.DAG图最小路径覆盖
2.分层图最短路径(上文拆点的d情况)
3.二分图匹配
4.各种不相交路径(上文拆点的a情况)

想练网络流的可以试试《经典的网络流24题》,我反正是全部刷完了,里面的模型都很好,我博客里也有一些我觉得好的题的思路和自己写的代码可供参考.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值