随笔分类 - 模板
摘要:序: 在OI比赛中,很多情况下我们可以能通过打表(找规律)或者某些方式发现一个递归式。 例如:f(n) = f(n 1)+f(n 2),(斐波那契数列)。 通常情况下,我们计算f(n)的时间复杂度就是O(n)(分别计算f(1), f(2) ... f(n 1)). 但是当n很大又或者还有其他处理的复
阅读全文
摘要:序: 在之前的博文中,我解释了关于最大流的EK与Dinic算法,以及它们的STL/非STL的实现(其实没什么区别)。本次讲解的是ISAP算法。‘I’,指 improved,也就是说ISAP其实是SAP算法的改进。目前没有官方名称。 经过测试,ISAP的效率在洛谷的板子题中远胜于EK和Dinic的,速
阅读全文
摘要:引言: 在最大流(一)中我们讨论了关于EK算法的原理与代码实现,此文将讨论与EK算法同级别复杂度(O(N^2M))的算法——Dinic算法。 Dinic算法用到的思想是图的分层结构,通过BFS将每一个节点标出层次后DFS得到当前增广路。然后继续在残留网络中进行BFS分层,当汇点不在层次网络时(没有连
阅读全文
摘要:原文地址:http://blog.csdn.net/wall_f/article/details/8373395 原文只附代码,没有解析,本文增加了一些对代码的解释。 请注意:本模板不涉及实数运算与负数运算,使用减法a-b时请保证, a >= b;所有用本模板来转化的数需保证a >0 && a无小数
阅读全文
摘要:这是网络流最基础的部分——求出源点到汇点的最大流(Max-Flow)。 最大流的算法有比较多,本次介绍的是其中复杂度较高,但是比较好写的EK算法。(不涉及分层,纯粹靠BFS找汇点及回溯找最小流量得到最终的答案) EK算法,全名Edmonds-Karp算法(最短路径增广算法)。 首先简单介绍一下网络流
阅读全文

浙公网安备 33010602011771号