
图论-二分图匹配
文章平均质量分 56
Endless_Way
这个作者很懒,什么都没留下…
展开
-
BZOJ 1059 [ZJOI2007]矩阵游戏
二分图匹配可以证明,如果存在n个黑格,且他们互不同行互不同列,就一定有解。相反如果有解,就一定有这样的n个黑格。于是找完美匹配#include<cstdio>#include<cstring>#define N 205using namespace std;struct edge{int next,to;}e[N*N];int ecnt=1;int last[N], mat[N], n;原创 2016-09-25 14:23:17 · 267 阅读 · 0 评论 -
BZOJ 1854 [Scoi2010]游戏
并查集 或 二分图匹配这题复杂度错误的算法竟然跑得比正解快 错误的算法(1):用装备的两种属性向装备连边,跑二分图匹配即可,注意题目要求是连续攻击,所以一旦匹配不成功就要退出正确的算法(2):把每一个装备考虑成一条边,它的两个属性考虑成边两端点的编号。使用装备相当于删除这条边。于是可以发现如果某连通块图中有环,那么环上的点必定都可以取到。如果是树结构,让编号最大的取不到即可。二分图匹配#includ原创 2016-09-25 14:48:13 · 424 阅读 · 0 评论 -
BZOJ 4443 [Scoi2015]小凸玩矩阵
二分+二分图匹配题目转化为求k个行列不相交的数,最小化最大值。二分,行列看成二分图,进行匹配即可。坑爹,第k大是从大的开始算的第k个。语文好差呀。。。#include<cstdio>#include<cstring>#define N 255using namespace std;namespace runzhe2000{ int n, m, k, a[N][N], last[N]原创 2017-01-25 21:19:59 · 413 阅读 · 0 评论 -
BZOJ 1143 [CTSC2008]祭祀river
传递闭包+二分图最大独立集。如果i能到达k,k能到达j,那么i能到达j,连边。因为最终答案的点之间肯定不存在边,所以跑二分图最大匹配,计算最大独立集即可。顺便学一些二分图的知识,本题考察下文第六点以下资料来自这里,我对它进行了一些整理修改和补充。注意,以下的图中不应存在一个点,与图中的其他点都没有连边。常用定理: 最小点覆盖=最大匹配。 最小边覆盖=最大独立集=图中点的个数-最大匹配。 最小路原创 2016-08-22 12:43:52 · 742 阅读 · 0 评论