您的好友 あほう已上线。 网络流我看了三天才看明白... 一致怀疑人生还要不要学算法了,笨都要笨死了我。 后来看了 最大流(网络流基础概念+三个算法) 这篇才明白,啊~ そっか~ 主要是没明白反向边,上面这篇博客讲得很详细啦。 那么我写这篇博客干啥呢... (大概是戏精上身) 就酱八... 咸鱼人生 ...
分类:
编程语言 时间:
2018-05-11 23:31:23
阅读次数:
164
Dinic算法: while(能够分层) { 分层; dfs增广; } 分层:即源点为0层,能一步到达的点为第一层,二步到达的点为第二层......(边容量为0即为不可达)。 dfs增广:按照层次从源点搜索一条可行流到汇点,减去可行流得到残余网络,然后回溯,接着在残余网络上寻找可行流,直到回溯到0层 ...
分类:
其他好文 时间:
2018-04-30 17:53:04
阅读次数:
159
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3572 题目大意: 给N个任务,M台机器。每个任务有最早才能开始做的时间S,deadline E,和持续工作的时间P。每个任务可以分段进行,但是在同一时刻,一台机器最多只能执行一个任务. 问存不存在可行 ...
分类:
编程语言 时间:
2018-04-23 00:10:57
阅读次数:
222
网络流Dinic算法模板题 题目描述 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水。这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间。因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没的烦恼(不用担心,雨水会流向附近的一条小溪)。作为一名一流的技师,农夫约 ...
分类:
其他好文 时间:
2018-04-15 23:01:20
阅读次数:
185
为什么叫ISAP ISAP(Improved Shortest Augment Path):改进的最短增广路,属于增广路算法 算法 Dinic算法中,我们每次都需要BFS出层次图,而在ISAP中,我们只需要初始化时BFS出层次图(从$T$向$S$进行),然后在増广的过程中维护标号$d$(就是到汇点$ ...
分类:
编程语言 时间:
2018-03-05 21:37:41
阅读次数:
202
1. 网络流:定义与简析 1.1 网络流是什么? 网络流是一种“类比水流的解决问题方法,与线性规划密切相关”(语出百度百科)。 其实,在信息学竞赛中,简单的网络流并不需要太高深的数学知识。 首先我们需要知道一些名词是什么意思: 点($node$)。就是一个节点。点集通常用$V$表示。其中,有一个源点 ...
分类:
编程语言 时间:
2018-03-04 20:03:38
阅读次数:
197
例题传送门 Dinic算法是网络流最大流的优化算法之一,每一步对原图进行分层,然后用DFS求增广路。时间复杂度是O(n^2*m),Dinic算法最多被分为n个阶段,每个阶段包括建层次网络和寻找增广路两部分。 Dinic算法是网络流最大流的优化算法之一,每一步对原图进行分层,然后用DFS求增广路。时间 ...
分类:
编程语言 时间:
2018-01-14 15:15:48
阅读次数:
228
前置知识 网络最大流入门 前言 Dinic在信息学奥赛中是一种最常用的求网络最大流的算法。 它凭借着思路直观,代码难度小,性能优越等优势,深受广大oier青睐 思想 $Dinic$算法属于增广路算法。 它的核心思想是:对于每一个点,对其所连的边进行增广,在增广的时候,每次增广“极大流” 这里有别于E ...
分类:
编程语言 时间:
2018-01-13 23:53:50
阅读次数:
404
裸的最小割,直接上Dinic算法。结果跑得很慢。 ...
分类:
其他好文 时间:
2017-10-12 21:50:18
阅读次数:
165
蒟蒻居然今天第一次写网络流 我太弱啦! 最大流问题有很多解法 虽然isap常数巨小 但是连dinic都写挂的本蒟蒻并不会orz 那么我们选用比较好实现的dinic来解决最大流问题 来一段定义: 于是我们就可以这样实现啦! 注意反向边权值为0,以及邻接表需要从0开始以保证反向边的对应关系 ...
分类:
编程语言 时间:
2017-09-11 12:23:06
阅读次数:
127