
二分匹配
Huglight
这个作者很懒,什么都没留下…
展开
-
HDU 1068 Girls and Boys 二分匹配 最大独立集
题意:给出学校中暗生情愫的男生和女生,求出一个最大的互相没有联系的学生集合思路:最大独立集=N-最大匹配。用匈牙利算法求出最大匹配,由于是无向图,求出的最大匹配要除以2匈牙利算法:从第一个人开始先对边的另一端匹配,第二个人若同样存在连有之前匹配到的人的边,则递归第一个人,让第一个人选其他人来匹配,把之前那个人让给第二个人#include<iostream>#include<...原创 2019-08-17 16:09:26 · 150 阅读 · 0 评论 -
HDU 1150 Machine Schedule 二分匹配 最小点覆盖
题意:有A、B两台机器,A有n种工作模式,B有m种工作模式,给k个产品,每个产品可以在A的工作模式x或者B的工作模式y下制作。两台机器工作时可能需要切换模式,求出需要切换的最少次数思路:可以用A、B的工作模式作为点,在之间连k条边,所求即为最小点覆盖(最少的点覆盖k条边),而最小点覆盖=最大匹配,故可以用匈牙利算法来求最大匹配即可#include<iostream>#includ...原创 2019-08-30 17:17:29 · 159 阅读 · 0 评论 -
HDU 1045 Fire Net 二分匹配
题意:给一个n*n的矩阵,‘X’表示城墙,’.'表示空地,可以在空地上建造碉堡,两碉堡不能处于同一行或者同一列,除非中间有城墙隔着,求能够建造的碉堡的最大个数思路:这题可以通过缩点来用二分匹配解决(强),把每行和每列中的所有连着的空地缩成一个点(显然两个碉堡不能处于连续的空地),若某行和某列上的点为空地,在各自缩成的点之间连一条边,求出所有行缩成的点和列缩成的点的最大匹配即可#include&...转载 2019-09-01 18:05:50 · 132 阅读 · 0 评论 -
HDU 2444 The Accomodation of Students 二分图判定 二分匹配
题意:有n个人,给出其中相互认识的几对,求出是否能够分出两组人,其中每组中任意两个人互不认识,然后将两组中认识的两个人分到同一个房间里,若能分出这样的两组,求出分到的房间的最多个数思路:即判定给定图是否是二分图,若是二分图则求最大匹配。判定二分图用bfs染色法,对于每个点,与其连接的点染上与其相反的颜色,若某点连接的点与其颜色相同,说明图不是二分图#include<iostream>...原创 2019-09-01 19:42:46 · 175 阅读 · 0 评论 -
HDU 1083 Courses 二分匹配
题意:有n个学生,p个课程,一个学生可以选多个课程,求出是否可以组成一个集合,集合里正好有p个学生,每个学生正好对应选p个不同的课程思路:求最大匹配,判断是否等于p即可#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<vector&g...原创 2019-09-01 20:03:50 · 166 阅读 · 0 评论