链接: https://vjudge.net/problem/HDU 2389 题意: You’re giving a party in the garden of your villa by the sea. The party is a huge success, and everyone is ...
分类:
其他好文 时间:
2019-07-10 15:03:15
阅读次数:
89
这道题,是个人都看得出来,是求一个二分图的最大匹配。 但是网络流24题嘛,我们考虑一下用网络流的方法做。 一般二分图的题,转网络流做,都需要建立一个起点和汇点。然后求一个最大流,这个最大流就是二分图的最大匹配。 我用的是Edmonds-Karp算法bfs版本 代码 留坑匈牙利算法 ...
分类:
其他好文 时间:
2019-02-26 00:53:41
阅读次数:
191
众所周知,网络流是探究网络上运输的一种图论分支。但是大多数人在第一次接触这个题时都有些畏惧感(~~比如说我~~),大佬可以自信跳过.. 本文包括: 1.网络流的概念及基本性质 2.略谈 Edmonds Karp增广路算法 3.详谈 Dinic 算法 4.网络流的应用以及ISAP算法引入 1 . 网络 ...
分类:
其他好文 时间:
2019-02-17 11:07:21
阅读次数:
178
前言 A:这么简单的东西,怎么现在才学?? B:别提了,还不是因为菜o(╥﹏╥)o A:那打算讲些什么东西 B:$BKDRHash$、$Rabin karp$以及简单应用 简洁 所谓字符串哈希:其实就是把字符串映射成数值储存下来分别直接比较 $BKDRHash$:程序便于记忆和使用,冲突概率较低,在 ...
分类:
其他好文 时间:
2019-02-14 00:18:38
阅读次数:
179
主要还是板子 Edmonds-Karp 从S开始bfs,直到找到一条到达T的路径后将该路径增广,并重复这一过程。 在处理过程中,为了应对“找到的一条路径把其他路径堵塞”的情况,采用了建反向弧的方式来实现“反悔”过程。 这种“反悔”的想法和技巧值得借鉴。 Dinic EK的效率是$O(nm^2)$的, ...
分类:
其他好文 时间:
2019-02-04 10:21:20
阅读次数:
154
Rabin-Karp Accepted 1711 904MS 5272K 1310 B G++ #include "bits/stdc++.h" using namespace std; typedef long long LL; const int MAXN = 1e6 + 5; const in ...
分类:
其他好文 时间:
2019-01-23 17:17:11
阅读次数:
197
const int maxn=1e4+5; struct Edge{ int from,to,cap,flow; Edge(int u,int v,int c,int f):from(u),to(v),cap(c),flow(f){} }; struct EdmodsKarp{ int n,m; v... ...
分类:
其他好文 时间:
2018-11-30 22:41:48
阅读次数:
242
求解问题 寻找S中T出现的位置或次数。假设S的长度为n, T的长度为m, 通过枚举S长度为m的字串的hash值与T的hash值比较。此时使用滚动hash的优化使复杂度不为O(mn). 算法说明 滚动hash 取两个合适的素数b和h,假设字符串C = c1c2c3c4,定义hash函数: H(C) = ...
分类:
其他好文 时间:
2018-10-21 19:37:52
阅读次数:
144
纯最大流,Dicnic算法: Edmonds Karp模板 对于最小割来说,在算法结束后,令已经标号的结点(a[u]>0的结点)集合为S,其他集合为T=V-S,则(S,T)是图 s-t 的最小割 ...
分类:
其他好文 时间:
2018-08-31 21:06:58
阅读次数:
150
本文是对 "二分图大讲堂" 这篇文章中Hopcroft Krap算法代码实现的详细注释。 HK算法的基本原理 Hopcroft Karp算法先使用BFS查找多条增广路,然后使用DFS遍历增广路(累加匹配数,修改匹配点集),循环执行,直到没有增广路为止。 Hopcroft Karp算法的BFS遍历只对 ...
分类:
编程语言 时间:
2018-08-03 19:54:58
阅读次数:
233