网络流常见建图套路总结(重制版) [TOC] 前置知识 1. 网络流的基本算法:Dinic最大流,EK+SPFA求费用流 2. 最小割,最小割最大流定理 3. 二分图判定,匹配,相关性质 4. 常见最短路径算法:Dijkstra,SPFA,Floyd 最大流 二分图最大匹配与多重匹配 定义: 二分图 ...
分类:
其他好文 时间:
2020-05-18 21:08:15
阅读次数:
72
网络流 网络流问题常见的求解目标有最大流(最小割)、最小费用最大流、上下界可行流等 最小割 最大流还有一个很重要的应用,就是求最小割,以下是一些定理,其实这些和二分图匹配里面的有点相似: 最小割 = 最大流 最大点权覆盖集 = 最小割 最小点权独立集 = 总权值 - 最大点权覆盖集 最小割的定义:把 ...
分类:
其他好文 时间:
2020-04-06 13:53:04
阅读次数:
80
题目描述 农夫约翰的奶牛们喜欢通过电邮保持联系,于是她们建立了一个奶牛电脑网络,以便互相交流。这些机器用如下的方式发送电邮:如果存在一个由c台电脑组成的序列a1,a2,...,a(c),且a1与a2相连,a2与a3相连,等等,那么电脑a1和a(c)就可以互发电邮。 很不幸,有时候奶牛会不小心踩到电脑 ...
分类:
移动开发 时间:
2020-02-25 09:58:31
阅读次数:
139
二分图匹配: 1.匈牙利算法 O(n * m) n为二分图左侧点数 m为二分图右侧点数 #include<bits/stdc++.h> using namespace std; const int N=1e7; struct node{ int from,to,nxt; }e[N]; int hea ...
分类:
其他好文 时间:
2020-01-26 22:05:33
阅读次数:
66
实现参考: http://blog.sina.com.cn/s/blog_60a0e97e0101bfj9.html 介绍流、割、最大流、最小割、最大流最小割定理、增广路径、残存网络、Ford-Fulkerson算法 https://blog.csdn.net/sinat_41613352/arti ...
分类:
其他好文 时间:
2020-01-08 14:49:50
阅读次数:
111
最小割,考虑最小割就是要将整张图分为两块,本题中就分别表示赞同和不赞同,那么首先一开始赞同的点向S连边,不赞同的点向T连边,如果这些点分到了另一边就要割掉这条边,朋友关系同理,连双向边同样表示分到两边要割掉这条边,跑最小割=最大流即可 1 #include<bits/stdc++.h> 2 usin ...
分类:
其他好文 时间:
2019-11-10 15:51:46
阅读次数:
72
闲扯 为了学习最小割到了这道题,但是看题解的时候发现做法还有树形 $DP$ ~~毕竟没怎么认真想过题~~,写完最小割之后,顺手来了发树形 $DP$ ,然后就过了,感觉真爽啊~~ 题面 "题面" Solution 解法一:最小割最大流 因为要求是所有的叶节点都不能到达根结点,而且可以删除边,要求删边的 ...
分类:
其他好文 时间:
2019-08-19 09:55:21
阅读次数:
83
先来理解几个概念 割 在原先能够流通的网络中移除的边集,使得网络无法流通 最小割 所有的割中边权和最小的割即为最小割 可以想象一下,Kido为了自给自足给自己建了超多供水管道(kido能进行光合作用),形成了一个网络,然后容量越大的管道防护设施越好,但是总有人想渴死Kido就想炸掉管道,但是贫乏的恐 ...
分类:
其他好文 时间:
2019-05-11 19:50:58
阅读次数:
132
定理一: 如果f是网络中的一个流,CUT(S,T)是任意一个割,那么f的值等于正向割边的流量与负向割边的流量之差。 证明: 设X和Y是网络中的两个顶点集合,用f(X,Y)表示从X中的一个顶点指向Y的一个顶点的所有弧(弧尾在X中,弧头在Y中: )的流量和。只需证明:f=f(S,T) f(T,S) 即可 ...
分类:
其他好文 时间:
2019-02-16 09:12:57
阅读次数:
197
"原题传送门" 看到这种题,应该一眼就能知道考的是最小割 没错这题就是如此简单,跑两遍最大流(最小割=最大流),一次边权为题目所给,一次边权为1 还有一种优化,优化后只需跑一次最大流,把每条边的权值改成w MOD+1(MOD为常数,珂以取八位质数233) 答案为maxflow/MOD和maxflow ...
分类:
其他好文 时间:
2019-02-09 11:52:23
阅读次数:
97