网络流复习笔记

模板

菜鸡的模板很丑,就不贴了。算法

网络流24题

这玩意你不搞好就别作网络流了,固然你是神仙当我没说。网络

一些别的关于最大流的东西

把流量当作需求量/偏移量,而后用源汇调整,用来判断可行性。函数

最小割

最小割定理:最小割=最大流。优化

最小割断定定理:先跑一遍最小割。spa

一条边可能在最小割:流满,两端点在不一样\(SCC\)模板

一条边必定在最小割:流满,起点和源点在同一个\(SCC\),终点和汇点在同一个\(SCC\)class

通常用来当代价用,我如今碰到的模型最小割不知道比最大流多到哪里去了。基础

先加上贡献,而后减掉代价。变量

费用流

就是那点东西,\(zsy\)教了我一个能够跑特殊意义下费用流的带负环的算法,然而我不打算写。。。思考

上下界网络流

有源汇=\(T->S\)\(inf\)边,就无源汇了。

先跑可行流。可行流就是先把每条边的下界跑满,而后新建超级源汇补流吸流。

思考这一类问题(包括一些并非上下界可是须要调整的模型)能够经过水来形象的思考。

最大流就是在这个基础上跑加上\(S->T\),最小流就是减掉\(T->S\),这里的\(S,T\)都是指原来的源汇。

一类特殊的线性规划问题

知足每一个变量是非负整数。

先用\(y_i,z_i\)等把全部不等式化成等式,而后用差分的奇技淫巧使得每一个变量只出现过两次,一次正一次负。

这个必定要本身好好推一推,大概是源点像常数项为负的连边,常数项为正向汇点连边,负向正连边。

最好一开始默认全部变量是零,而后你经过改变一个变量的值来平衡流量。

一类优化

咱们常常会碰到好比说一个点像区间连边的题,但这样边数会很大,又\(TLE\)\(MLE\)

因此线段树优化连边,主席树优化连边,线段树合并优化连边(好像都是线段树?)

注意一些线段树的东西在维护的时候想好怎么连边,好比线段树合并的\(merge\)函数。

\(n\)很小区间个数不少能够二维\(RMQ\)优化。

模拟费用流

这是个神仙玩意,我尚未填完坑呢。

相关文章
相关标签/搜索