二分匹配
不吸血的Vampire
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDU1083,PKU1469,ZJU1140
最大二分匹配 #include #include #include #include #include #include #include #include using namespace std; int vis[305];//记录y中节点是否使用 int ans[305];记录当前与y节点相连的x的节点 int mat[105][305];//记录连接x和y的边,如果i和j之间有边则为原创 2013-11-17 12:03:03 · 762 阅读 · 0 评论 -
PKU1486,ZJU1197:求出二分匹配图中的必须边;
题意:给出几张纸的覆盖范围,和几个标号的坐标,求最多的可以确定这些纸的标号 思路:每张纸作为X部,标号作为Y部,如果标号在纸中,则连一条边,求最大匹配。 检验是否有多重的匹配时,可以枚举删除匹配边,再对其进行匹配,若找到匹配边, 则该纸的标号不确定。#include #include #include #include #include #in原创 2013-11-17 12:02:18 · 781 阅读 · 0 评论 -
HDU1281 二分匹配 + 最需边
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1281 题意:给出可放车的点坐标,问最多可以放多少个车(车可以互相攻击),为了达到放车数最多有多少个点是必须放车的。。。 思路:二分最大匹配 + 必须边。。。 #include #include #include #include #include #include #includ原创 2014-02-12 22:16:19 · 536 阅读 · 0 评论 -
HDU 1498
题意:给你n*n的方阵,map[i][j]代表着一种颜色气球,每次能对一种颜色进行一行或一列的气球扎破, 问经过m次哪几种的气球是不能全部扎破的,问能输出-1; 思路:看了网上的才知道,二分匹配的见图,每次对一种气球的行列进行匹配,若匹配数>m则说明不能全部扎破。。。。 #include #include #include #include #include原创 2014-02-25 21:55:03 · 568 阅读 · 0 评论 -
HDU 1507
题意:给你N*M的空地,其中有K块是草坪,问最多有多少块1*2的草坪能铺在空地上。。。 思路:先把空地保存在一个有x,y(行和列)的结构体理; 对能铺上1*2的i,j两点建边,以奇数或偶数(行加列)进行二分匹配。。。。 //HDU 1507 #include #include #include #include #include #in原创 2014-02-26 20:53:38 · 822 阅读 · 0 评论 -
HDU 2768
题意:给你n条狗m条猫,k个投票人;每个投票人对猫和狗投讨厌和喜欢的票,求满足最多人的数。。。 对矛盾的投票人建双向边,最后答案就是k-最大匹配数/2(只能满足其中一个人); #include #include #include #include #include #include #include #include #include #include using name原创 2014-03-01 10:56:44 · 659 阅读 · 0 评论 -
HDU 2444 判断是否为二分图
题意:给你n,m,问是否为二分图,若是找出他的最大二分匹配。。。。 #include #include #include using namespace std; const int N = 220; int col[N], g[N][N],n,m; int ans[N],vis[N],sum; int queu[N],judge[N]; //0为白色,1为黑色 boo原创 2014-02-28 22:32:12 · 594 阅读 · 0 评论 -
HDU 2819 (二分匹配)
题意: #include #include #include #include #include #include #include #include #include #include using namespace std; #define INF 1e8 #define inf -0x3f3f3f3f #define eps 1e-8 #define ll __int6原创 2014-04-20 11:32:34 · 594 阅读 · 0 评论
分享