HDU 1083 网络流之二分图匹配
http://acm.hdu.edu.cn/showproblem.php?pid=1083
二分图匹配用得很多
这道题只需要简化的二分匹配
#include<iostream>
#include<cstdio>
#include<cstring>
#define maxm 410
using namespace std;
int p,n;
int master[maxm];
int linking[maxm][maxm];
int has[maxm];
int solve(int x)//x课
{
int i;
for(i=;i<=n;i++)
{
if(linking[x][i]&&!has[i])
{
has[i]=;
if(!master[i]||solve(master[i]))
{
master[i]=x;
return ;
}
}
}
return ;
}
int main()
{
int m,sum=;
scanf("%d",&m);
while(m--)
{
scanf("%d%d",&p,&n);
memset(master,,sizeof(master));
memset(linking,,sizeof(linking));
for(int i=;i<=p;i++)
{
int course;
int student;
scanf("%d",&course);
for(int j=;j<=course;j++)
{
scanf("%d",&student);
linking[i][student]=;
}
}
for(int donser=;donser<=p;donser++)
{
memset(has,,sizeof(has));
if(solve(donser)) sum++;
}
if(sum==p) printf("YES\n");
else printf("NO\n");
sum=;
}
return ;
}
HDU 1083 网络流之二分图匹配的更多相关文章
- HDU 1083 Courses(二分图匹配模板)
http://acm.hdu.edu.cn/showproblem.php?pid=1083 题意:有p门课和n个学生,每个学生都选了若干门课,每门课都要找一个同学来表演,且一个同学只能表演一门课,判 ...
- hdu 5727 Necklace dfs+二分图匹配
Necklace/center> 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5727 Description SJX has 2*N mag ...
- HDU 5727 Necklace(二分图匹配)
[题目链接]http://acm.hdu.edu.cn/showproblem.php?pid=5727 [题目大意] 现在有n颗阴珠子和n颗阳珠子,将它们阴阳相间圆排列构成一个环,已知有些阴珠子和阳 ...
- HDU 2819 Swap(二分图匹配)
[题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=2819 [题目大意] 给出一个棋盘,由白格子和黑格子组成,可以交换棋盘的行列, 使得其主对角线为黑格 ...
- hdu 5943(素数间隔+二分图匹配)
Kingdom of Obsession Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Oth ...
- HDU 1083 Courses 【二分图完备匹配】
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1083 Courses Time Limit: 20000/10000 MS (Java/Others) ...
- HDU 5727 - Necklace - [全排列+二分图匹配][Hopcroft-Karp算法模板]
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=5727 Problem DescriptionSJX has 2*N magic gems. ...
- hdu - 1150 Machine Schedule (二分图匹配最小点覆盖)
http://acm.hdu.edu.cn/showproblem.php?pid=1150 有两种机器,A机器有n种模式,B机器有m种模式,现在有k个任务需要执行,没切换一个任务机器就需要重启一次, ...
- hdu 1045 Fire Net 二分图匹配 && HDU-1281-棋盘游戏
题意:任意两个个'车'不能出现在同一行或同一列,当然如果他们中间有墙的话那就没有什么事,问最多能放多少个'车' 代码+注释: 1 //二分图最大匹配问题 2 //难点在建图方面,如果这个图里面一道墙也 ...
随机推荐
- Collections操作实例
<1>实例操作一:返回不可变的集合 Collections类中可以返回空的List.Set.Map集合,但是通过这种方式返回的对象是无法进行增加数据的,因为在这些操作中并没有实现add() ...
- JavaBean简单示例
本示例说明: 从Login.jsp中输入用户名和密码,提交,在NewFile.jsp中显示信息. ----- 类要放在一个包中!!! UserB 类文件 package model; public c ...
- winSocket数据传输
服务器端: #include <WINSOCK2.H> #include <stdio.h> #pragma comment(lib,"ws2_32.lib" ...
- Unity3D PerRendererData
http://nordicedu.com/tkokblog/wordpress/?tag=perrendererdata MaterialPropertyBlock and SpriteRendere ...
- 利用Ramdisk为Firefox 加速
用Firefox的人可能会羡慕Chrome的速度,但是又不舍得丢弃Firefox.Firefox的加速,可能通过一系列的方法,例如用fasterfox扩 展.但利用虚拟内存盘 Ramdisk ,将将内 ...
- 微型orm fluentdata
http://fluentdata.codeplex.com/documentation#Query
- struts2基础篇(1)
一.Struts2简介Struts2以WebWork优秀的设计思想为核心,吸收了Struts1的部分优点,建立了一个基于WebWork和Struts1的MVC框架. 二.搭建Struts2开发环境2. ...
- angular-ngSanitize模块-$sanitize服务详解
本篇主要讲解angular中的$sanitize这个服务.此服务依赖于ngSanitize模块. 要学习这个服务,先要了解另一个指令: ng-bing-html. 顾名思义,ng-bind-html和 ...
- URL、Session、Cookies、Server.Transfer、Application和跨页面传送,利弊比较
URL.Session.Cookies.Server.Transfer.Application和跨页面传送.-本题考查面试者对ASP.NET中多页面传值的理解是否全面.因为ASP.NET的页面表单提交 ...
- 【bzoj1596】[Usaco2008 Jan]电话网络
题目描述 Farmer John决定为他的所有奶牛都配备手机,以此鼓励她们互相交流.不过,为此FJ必须在奶牛们居住的N(1 <= N <= 10,000)块草地中选一些建上无线电通讯塔,来 ...