二分图匹配
H_ang
记录一些东西吧!
展开
-
二分图匹配 HDU - 1045棋盘覆盖(行x列匹配)
题目链接:https://vjudge.net/problem/19334/origin 题目大意: 如图:每个车不能“碰面”(每行每列只能一个:出除非墙隔开) 问给你一个棋盘,最多能放多少个车?多样例。 输入 4 .X… … XX… … 输出: 5 思路:把行与列做匹配,把每一行和每列进行编号。有墙就是新点。 #include <bits/stdc++.h> using names...原创 2019-05-19 21:11:50 · 266 阅读 · 0 评论 -
二分图匹配 HDU - 2444二分图判定+最大匹配
题目链接:https://vjudge.net/problem/18341/origin 题目大意:给你n个学生,m个朋友关系。问你能不能把学生分成二组,每一组的人没有互相认识。如果可以,这样对认识的人分配双人房。问你最多可以分配双人房。 思路:判断是不是二分图,如果是最大匹配/2就可以了。 #include<bits/stdc++.h> using namespace std; #d...原创 2019-05-19 21:20:44 · 190 阅读 · 0 评论 -
二分图匹配 HDU - 1281二分匹配的关键边
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1281 题目大意: 每个车不能碰面,灰色不能放车,问最多可以放多少个车。关键的空位:如果这个位置不能放车的话。那么现在可以放的车的数量比之前少。 思路:最开始求最大匹配,然后枚举每一条边,拆了,最大匹配是否会减少?是,这就是关键边。 #include <bits/stdc++.h> us...原创 2019-05-19 21:32:15 · 247 阅读 · 0 评论 -
二分图匹配 HDU - 2819输出最大匹配的方案
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2819 题目大意: 给定N * N矩阵,每个条目等于0或1.您可以交换任意两行或任意两列。你能找到一种让所有对角线条目等于1的方法吗? 输入中有几个测试用例。每个测试用例的第一行是整数N(1 <= N <= 100)。然后是N行,每行包含N个数字(0或1),按空格分隔,表示N * N矩阵。 ...原创 2019-05-19 21:44:33 · 746 阅读 · 0 评论 -
二分图匹配 POJ - 3020 1x2的方格匹配地图
给你一个地图,每个天线最多可以覆盖相邻的两个房子,问你最少用多少个天线可以覆盖全部房子。 思路:先对所有的房子编号,然后对一个房子x如果它正下方或者右方有房子y, 那么e[x][y]=e[y][x]=1; 那么最大匹配ans/2就是能够覆盖两个房子的天线数,那么剩下的房子,就每一个都必须用一个天线来匹配。 能够覆盖两个房子的天线数: ans/2 单独覆盖一个房子的天线数: 所有的点N-ans 所...原创 2019-05-19 22:00:50 · 207 阅读 · 0 评论