经典二分图匹配问题。把每个点拆成两个,对于原图中的每一条边(i,j)连接(i,j+n),最小路径覆盖就是点数n 二分图最大匹配。方案直接顺着匹配dsf。。 cpp include include using namespace std; const int N=505,M=120005; int n ...
分类:
编程语言 时间:
2018-02-07 00:34:04
阅读次数:
207
匈牙利算法 更好阅读体验:https://www.zybuluo.com/xzyxzy/note/980353 一、基本内容 博客:http://www.renfei.org/blog/bipartite matching.html 主要在于增广路的理解 二、实现 一般是E遍搜索(DFS),一次搜索 ...
分类:
编程语言 时间:
2018-02-03 23:11:41
阅读次数:
282
原文链接http://www.cnblogs.com/zhouzhendong/p/8372785.html 题目传送门 - BZOJ1433 题解 我们理一理题目。 在校的学生,有自己的床,还可以睡朋友的床。 离校的学生,不占床。 外来的学生,只能睡朋友的床。 然后就是一个裸的二分图匹配了。 代码 ...
分类:
编程语言 时间:
2018-01-29 00:24:51
阅读次数:
194
一看就想到了二分图最大匹配的匈牙利算法。 注意要加时间戳优化,不然会超时。 在网上找到了并查集做法,不难理解。 如果没有出现环,那么结果肯定是一片森林。 我们肯定每次选小的。 如果出现了环,那么环所在集合每个数都可以选了。 于是我们使用并查集维护集合。 保证集合的祖宗是整个并查集中最大的属性值。 每 ...
分类:
其他好文 时间:
2018-01-24 22:25:11
阅读次数:
262
二分图又称作二部图,是图论中的一种特殊模型。 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图 二分图将图分成两个点集,而使用匈牙利算法的前提是 ...
分类:
其他好文 时间:
2018-01-23 18:25:53
阅读次数:
201
怎么感觉二分图的匈牙利算法东西好多啊,啊啊啊啊啊啊啊啊啊(吐血。。。) 先传送一个写的很好的博客,害怕智障找不到了。。。 大神膜%%% Orz 继续学习。。。 ...
分类:
编程语言 时间:
2018-01-22 23:01:01
阅读次数:
200
题目:http://codeforces.com/gym/100735/problem/H H. Words from cubes time limit per test 0.25 s time limit per test memory limit per test 64 MB memory li ...
分类:
编程语言 时间:
2018-01-20 15:05:01
阅读次数:
184
一、 求逆元-费马小定理 二、 树状数组 三、 最大流-Dinic 四、 二分图-匈牙利算法 五、 扩展欧几里得 六、 假的字符串Hash,其实是map 七、 克鲁斯卡尔 八、 LCA-倍增 九、 构造最长公共子序列LCS 十、 归并排序求逆序对 十一、 线段树 十二、 SPFA 十三、 树链剖分 ...
分类:
其他好文 时间:
2018-01-18 19:34:49
阅读次数:
185
一、 求逆元-费马小定理 二、 树状数组 三、 最大流-Dinic 四、 二分图-匈牙利算法 五、 扩展欧几里得 六、 假的字符串Hash,其实是map 七、 克鲁斯卡尔 八、 LCA-倍增 九、 构造最长公共子序列LCS 十、 归并排序求逆序对 十一、 线段树 十二、 SPFA 十三、 树链剖分 ...
分类:
其他好文 时间:
2018-01-14 00:58:13
阅读次数:
151