就是最简单的最大匹配,没的说

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define Maxn 310
using namespace std;
int n,m,vi[Maxn],match[Maxn],graphic[Maxn][Maxn];
int dfs(int u)
{int i;for(i=1;i<=m;i++){if(!vi[i]&&graphic[u][i]){vi[i]=1;if(match[i]==-1||dfs(match[i])){match[i]=u;return 1;}}}return 0;
}
int main()
{int i,j,k,t,a,b;scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);memset(match,-1,sizeof(match));memset(graphic,0,sizeof(graphic));for(i=1;i<=n;i++){scanf("%d",&a);for(j=1;j<=a;j++){scanf("%d",&b);graphic[i][b]=1;}}int num=0;for(i=1;i<=n;i++){memset(vi,0,sizeof(vi));if(dfs(i))num++;}if(num==n)printf("YES\n");elseprintf("NO\n");}return 0;
}

转载于:https://www.cnblogs.com/wangfang20/p/3193137.html

poj 1469 二分图最大匹配相关推荐

  1. POJ - 2226 Muddy Fields(最小点覆盖-二分图最大匹配)

    题目链接:点击查看 题目大意:给出一个n*m的地图,地图中'*'代表泥地,'.'代表空地,现在我们有两种木板,一种可以覆盖一行中的任意长度,我们成为行木板,另一种可以覆盖一列中的任意长度,我们成为列木 ...

  2. poj 1469 COURSES

    2019独角兽企业重金招聘Python工程师标准>>> COURSES Time Limit: 1000MS Memory Limit: 10000K Total Submissio ...

  3. 【网络流24题】解题报告:A、飞行员配对方案问题(最大流求二分图最大匹配)

    A.飞行员配对方案问题 (二分图最大匹配)(最大流)[提高+/省选- ] 题目链接 [问题分析] 二分图最大匹配问题. [建模方法] 在二分图的基础上增加源S和汇T. 1.S向X集合中每个顶点连一条容 ...

  4. 【模板】匈牙利算法 二分图最大匹配题模板

    [任务] 给定一个二分图,用匈牙利算法求这个二分图的最大匹配数. [说明] 求最大匹配,那么我们希望每一个在左边的点都尽量找到右边的一个点和它匹配. 我们一次枚举左边的点x的所有出边指向的点y, 若y ...

  5. 51nod 2006 飞行员配对(二分图最大匹配) 裸匈牙利算法 求二分图最大匹配题

    题目: 题目已经说了是最大二分匹配题, 查了一下最大二分匹配题有两种解法, 匈牙利算法和网络流. 看了一下觉得匈牙利算法更好理解, 然后我照着小红书模板打了一遍就过了. 匈牙利算法:先试着把没用过的左 ...

  6. 2021牛客多校3 - Minimum grid(二分图最大匹配-最大流)

    题目链接:点击查看 题目大意:给出一个 n∗nn*nn∗n 的棋盘,其中有 mmm 个位置是需要填数字的位置,每个位置需要填 [0,k][0,k][0,k] 的数字中的其中一个,可以重复,现在给出每一 ...

  7. HDU - 1054 Strategic Game(最小点覆盖-二分图最大匹配)

    题目链接:点击查看 题目大意:给出一棵树,现在要在节点上放置士兵,每个士兵可以监视与其所在的节点直接相连的节点,问最少需要多少个士兵才能将整棵树都监视到 题目分析:求最少的节点,以保证每条边都有一个端 ...

  8. HDU - 2389 Rain on your Parade(Hopcroft-Krap算法求二分图最大匹配)

    题目链接:点击查看 题目大意:给出n个人和m个雨伞,t分钟后就要下雨了,现在给出每个人的坐标和速度,以及雨伞所在的坐标,每个雨伞只能容纳一个人,题目问最多有多少个人能不被淋到 题目分析:二分图最大匹配 ...

  9. HDU - 1528 Card Game Cheater(二分图最大匹配)

    题目链接:点击查看 题目大意:题意有点像求田忌赛马的最优解,大概意思就是现在有两个人,每个人都有n张不同的扑克牌,扑克牌的大小首先以点数来确定,点数相同的情况下以花色来决定,红桃(Heart)> ...

最新文章

  1. python⾯向对象学员管理系统
  2. python生成器使用场景桌面_Python – 如何更简洁地使用生成器?
  3. 【数据分析】理解数据分析
  4. 机器之心 Synced 08月12日 20:59
  5. Spring Boot 2.0 新特性(一):配置绑定 2.0 全解析
  6. php 经纬度 距离排序,php mysql 根据经纬度计算距离和排序
  7. 单片机原理及其应用——单片机控制单个发光二极管实验(附超详细的C51单片机实验教程)
  8. leetCode #26 Remove Duplicates from Sorted Array
  9. Ubuntu14.04-LAMP环境搭建
  10. 澳大利亚计算机领域的科学家,澳科学家首创硅基元件 突破量子计算机制造瓶颈...
  11. [转]JAVA自动装箱和拆箱
  12. vue组件化开发学习笔记-2-组件间的数据交互
  13. 【毕业论文】参考文献的引用格式
  14. 台达 PLC - 高速输入
  15. 动画设计基础(第二节)-3d max2014-骨骼飘带(错帧)
  16. 破解从 AppStore 下载的 IPA
  17. 数据结构——图的邻接表存储
  18. 【小知识】java中的this.name=name是什么意思啊??this 有什么用啊,再哪出现?
  19. 基于多二维码识别的无人机运动真值获取
  20. 鹰眼轨迹管理平台移植

热门文章

  1. kibana操作elasticsearch:修改数据
  2. html sql注入_Web安全-SQL注入(sqli-lab)
  3. Centos7入侵分析:分析SSH登录日志
  4. 【代码示例】 一个简单的Java死锁
  5. 8086逻辑运算和移位
  6. WeekHashMap
  7. 两个自变量和一个因变量spss_多个自变量(包括离散变量和连续变量)对一个因变量的影响(SPSS:协方差分析)...
  8. java框架_2020年Java框架排行榜,谁居榜首?
  9. 今天同大家聊一下Git扩展
  10. 共创Linux防火墙,Linux防火墙iptables简明教程