网络流可以解决 二分图最大匹配(网络中的每条边的容量设为1) 多重匹配() 网络流最大流问题的算法 Edmonds karp增广路算法A$O(m^{2}n)$ dinic算法 1.在图上找到一条从源点到汇点的路径(称为‘增广路’)。 2.取增广路上的残量最小值v。(也就是流过的路径中流量最小的那一个 ...
分类:
其他好文 时间:
2019-11-03 20:12:24
阅读次数:
89
传送门 ?题意 给出 n 个人,m 场比赛; 这 m 场比赛,每一场比赛中的对决的两人,一个属于 "good player" 另一个属于 "bad player"; 给出你 x 个已经确定的"good player" 和 y 个已经确定的 "bad player"。 问是否可以将这 n 个人划分成两 ...
分类:
其他好文 时间:
2019-11-03 13:11:04
阅读次数:
76
好久之前就注册了一直没写 今天开始把刷的题都放在上面 这个题就是建个补图找双连通分量然后染色判断是不是二分图(奇圈一定不是二分图) re了好多次 debug2小时 最后发现栈数组开小了。。。 看的蓝书的思路 debug时把代码刘汝佳化了 ...
分类:
其他好文 时间:
2019-10-31 00:39:52
阅读次数:
72
二分图最大匹配 匈牙利算法 cpp include using namespace std; const int maxnx=1e3+5; const int maxny=1e3+5; const int maxm=2e6+5; int nx,ny,m; int my[maxny]; int vis ...
分类:
其他好文 时间:
2019-10-30 19:57:09
阅读次数:
100
定义 二分图也称二部图,是图论里的一种特殊模型,也是一种特殊的网络流。其最大的特点在于,可以将图里的顶点分为两个集合,且集合内的点没有直接关联,如下图所示。 如果某个图为二分图,那么它至少有两个顶点,且其所有回路的长度均为偶数,任何无回路的的图均是二分图。 1.染色法判断二分图 染色法是对每一个点深 ...
分类:
编程语言 时间:
2019-10-30 18:30:22
阅读次数:
92
双栈排序 题目链接:https://www.luogu.org/problem/P1155 数据范围:略。 题解: 神仙题。 就第一步就够劝退了。 这个二分图非常不容易,首先只有两个栈,不是属于一个就是属于另一个,我们用二分图判断冲突。 然后不能模拟,我们就贪心的bfs就行了,这一步很鬼畜啊.... ...
分类:
编程语言 时间:
2019-10-30 00:10:11
阅读次数:
103
传送门 "Luogu" 解题思路 二分图匹配,关键是建图。 如果我们naive地直接把每个武器的两个属性分为两部建图的话,显然是跑不了的。 我们考虑把每一个武器的属性向它连边:$a_i \rightarrow i,b_i \rightarrow i$ 然后我们从属性这一部从小到大枚举,寻找增广路,直 ...
分类:
其他好文 时间:
2019-10-27 11:02:24
阅读次数:
86
题意:http://acm.hdu.edu.cn/showproblem.php?pid=5971 把已经告诉你的把能推测的都推测出来有矛盾就“NO”,剩下的跑二分图,矛盾就“NO”,剩下如果还有没有颜色的“NO”。 ...
分类:
其他好文 时间:
2019-10-26 23:25:51
阅读次数:
178
传送门 "Luogu" 解题思路 一眼想到二分图:但是求不了最大匹配方案数 oho。 于是考虑这么建图: 直接将一个人可以去的两把椅子连边,然后原图中的2n个点就会形成许多联通块,这个可以分步计数。 又因为每个联通块只会是一棵树或是环套树,所以分类讨论一个联通块内如何计数: + 若该联通块是一棵树( ...
分类:
其他好文 时间:
2019-10-26 22:57:27
阅读次数:
99
传送门 "Luogu" 解题思路 先跑一遍 $\text{Floyd}$ 预处理任意两点距离。 然后再二分时间,将每个人与该时间内可以到达的点连边,建一张二分图。 若最大匹配数大于等于所需,那么就缩小二分范围,最后记得判无解,然后输出答案即可。 细节注意事项 + 网络流好像不是很好写这道题? 参考代 ...
分类:
其他好文 时间:
2019-10-26 22:50:49
阅读次数:
82