hdu1083
#include"stdio.h"
#include"string.h"
#define N 305
int mark[N],link[N],map[N][N],p;
int find(int a) //匈牙利算法,二分匹配
{
int i;
for(i=1;i<=p;i++)
{
if(!mark[i]&&map[a][i])
{
mark[i]=1;
if(!link[i]||find(link[i]))//若i已经配对,则查找和i配对的
{ //那个元素是否还能和其他元素配对
link[i]=a;
return 1;
}
}
}
return 0;
}
int main()
{
int t,n,i,a,m,ans;
scanf("%d",&t);
while(t--)
{
memset(link,0,sizeof(link));
memset(map,0,sizeof(map));
scanf("%d%d",&p,&n);
for(i=1;i<=p;i++)
{
scanf("%d",&m);
while(m--)
{
scanf("%d",&a);
map[a][i]=1;
}
}
ans=0;
for(i=1;i<=n;i++)
{
memset(mark,0,sizeof(mark));
ans+=find(i);
}
if(ans==p) //最大匹配数等于课程数
printf("YES\n");
else
printf("NO\n");
}
return 0;
}
hdu1083的更多相关文章
- hdu2063+hdu1083(最大匹配数)
传送门:hdu2063过山车 #include <cstdio> #include <cstring> #include <string> #include < ...
- HDU1083 Courses —— 二分图最大匹配
题目链接:https://vjudge.net/problem/HDU-1083 Courses Time Limit: 20000/10000 MS (Java/Others) Memory ...
- HDU-1083 Courses 二分图 最大匹配
题目链接:https://cn.vjudge.net/problem/HDU-1083 题意 有一些学生,有一些课程 给出哪些学生可以学哪些课程,每个学生可以选多课,但只能做一个课程的代表 问所有课能 ...
- hdu1083二分图匹配模板题
onsider a group of N students and P courses. Each student visits zero, one or more than one courses. ...
- Hdu1083 Courses
Courses Problem Description Consider a group of N students and P courses. Each student visits zero, ...
- HDU1083(KB10-C 二分图最大匹配)
Courses Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- COURSES---poj1469 hdu1083(最大匹配)
题目链接:http://poj.org/problem?id=1469 http://acm.hdu.edu.cn/showproblem.php?pid=1083 题意:有n个学生p门课, 每门 ...
- HDU1083 :Courses(二分图匹配)
Cources Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- HDU-1083
Courses Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- HDU1083(二分图最大匹配vector实现)
Courses Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
随机推荐
- 性能强劲的Tokyo Cabinet 和 Tokyo Tyrant
Tokyo Cabinet Tokyo Cabinet (简称TC)是Mikio Hirabayashi开发的一种DBM的开发库,其数据文件只有一个,里面存放多个<key,value>的数 ...
- jquery获取点击标签内的子标签内容和值实例
今天有点累了,就不多做其他的描述解释.在插入的代码里相关解释也都有. <!--<%@ page language="java" import="java.ut ...
- Python快速学习-基础语法
- CSS3制作分步注册表单
这个DEMO是使用CSS3制作的一个分步注册表单,每个input对应的是每一步,在表单得到焦点时,对应的step也会进行对应的改变.不过这个效果是使用js代码来实现,但整个表单的外观是由CSS3来完成 ...
- Codeforces 158E Phone Talks:dp
题目链接:http://codeforces.com/problemset/problem/158/E 题意: 你有n个电话要接,每个电话打进来的时刻为第t[i]分钟,时长为d[i]分钟. 每一个电话 ...
- jQuery绑定事件的四种方式区别
jQuery中提供了四种事件监听方式,分别是bind.live.delegate.on,对应的解除监听的函数分别是unbind.die.undelegate.off.在开始看他们之前 一:bind(t ...
- PHP中有多态么
PHP中有多态么 一.总结 一句话总结:封装是类的构建过程,php具有:php也具有继承的特性.唯独这个多态,php体现的十分模糊.原因是php是弱类型语言. php不具有像java那种清晰的多态,不 ...
- 分享知识-快乐自己:Shrio 权限标签
一.验证当前用户是否为"访客",即未认证(包含未记住)的用户 <shiro:guest> Hi there! Please <a href="login ...
- 我理解的关于Vue.nextTick()的正确使用
什么是Vue.nextTick() 官方文档解释如下: 在下次 DOM 更新循环结束之后执行延迟回调.在修改数据之后立即使用这个方法,获取更新后的 DOM. 我理解的官方文档的这句话的侧重点在最后那半 ...
- centos 静态拨号
本人系统centos6.5:虚拟机太丑,固ssh. centos的与联网相关的配置文件在 $ /etc/sysconfig/network-scripts DHCP方式-联网 打开文件 $ vim / ...