题意:N个人,M个团体。每个人有属于自己的一些团体编号。将每个人分配到自己属于的团体中,问这个人数最多的团体其人数最小值是多少。 分析:一个一对多的二分图匹配,且是最大值最小化问题。二分图的多重匹配建立在匈牙利算法的基础上,令每个Y部的点可匹配多个点,但是规定其上限,超过上限就要在已有的匹配点中寻找 ...
分类:
其他好文 时间:
2018-07-26 22:06:32
阅读次数:
162
Link: P2526 传送门 Solution: 一道提示非常到位的题目 题面中强调了在两个路径相邻点间只能再去至多一个点,且每个点只计算一次贡献 于是明显可以将原题看作询问在两个不相交点集间最多能连几条边 接下来将合法边连上跑二分图匹配就好了 Tip:二分图匹配时分清$X,Y$集合以及$matc ...
分类:
其他好文 时间:
2018-07-22 00:35:13
阅读次数:
175
1 /* 2 题意:二分图匹配 3 题解: 4 时间:2018.07.18 5 */ 6 7 #include 8 using namespace std; 9 10 typedef long long LL; 11 const int MAXN = 100005; 12 const LL MOD7... ...
分类:
其他好文 时间:
2018-07-18 13:52:13
阅读次数:
122
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2744 首先,求一个图的最大团等价于求它的补图的最大独立集,而二分图的最大独立集 = 总点数 - 最大匹配数; 所以先把图转化成补图,也就是A国奇、偶点各自成团,B国奇、偶点相互连边而其内部无边 ...
分类:
其他好文 时间:
2018-07-08 20:09:21
阅读次数:
146
#include #include #include #include #include #include using namespace std; int n,m,k,ans,cnt,head[1001],vis[1001],match[1001]; struct uio{ int next,to... ...
分类:
编程语言 时间:
2018-07-08 18:09:34
阅读次数:
178
P3386 【模板】二分图匹配 题目背景 二分图 感谢@一扶苏一 提供的hack数据 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每行两个正整数u,v,表示u,v有一条连边 输出格式: 共一行,二分图最大 ...
分类:
其他好文 时间:
2018-07-08 10:34:12
阅读次数:
178
二分图匹配 题目背景 二分图 感谢@一扶苏一 提供的hack数据 题目描述 给定一个二分图,结点个数分别为n,m,边数为e,求二分图最大匹配数 输入输出格式 输入格式: 第一行,n,m,e 第二至e+1行,每行两个正整数u,v,表示u,v有一条连边 输出格式: 共一行,二分图最大匹配 输入输出样例 ...
分类:
其他好文 时间:
2018-07-05 23:35:11
阅读次数:
165
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1854 这题...据说可以用并查集做,但没有去看... 用二分图匹配的话,就把装备和它的两个属性连边,再从属性开始从小到大进行匈牙利算法; 这样可以保证匹配这个属性时先确保前面的都匹配成功了; ...
分类:
编程语言 时间:
2018-06-21 13:51:15
阅读次数:
170
题解 一道比较神奇的二分图匹配 既然有n个元素,那么能匹配n个位置,我们把这n个位置找出来,是每个区间从左端点开始找到一个没有被匹配到的位置作为该点(我们忽略右端点) 然后我们从价值大到小,然后从左端点的位置开始匹配,如果这个点没有被匹配,就匹配这个点 否则如果这个点已经匹配的区间右端点大于该点的右 ...
分类:
其他好文 时间:
2018-06-21 11:21:51
阅读次数:
175
"题目" 根据题目,我们很快能看出来,这是一个带权的二分图匹配问题。 二分图匹配,我们可以跑 "最大流" 而带上权值呢? 就可以跑 最小费用最大流 233。 啥? 不是求最大吗? 怎么可以跑最小费用? 其实是可以的。 对于最基础的最小费用最大流:每次求一条可以增广的最短路。然后增广。 而我们根据这个 ...
分类:
其他好文 时间:
2018-06-16 18:44:54
阅读次数:
216