poj 1469(匈牙利算法)
来源:互联网 发布:js 超出字数省略号 编辑:程序博客网 时间:2024/05/22 00:30
#include<stdio.h>
#define N 400
int map[N][N],use[N],link[N],m,n;
void initial()
{
int i,j;
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
map[i][j]=0;
link[i]=-1;
}
}
bool dfs(int x){
int i,j;
for(i=1;i<=m;i++){
if (use[i]==0 && map[x][i]) {
use[i]=1;
j=link[i];
link[i]=x;
if (j==-1|| dfs(j))
{
return true;
}
link[i]=j;
}
}
return false;
}
int hungary()
{
int num=0;
int i,j;
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
use[j]=0;
if (dfs(i))
num++;
}
return num;
}
int main()
{
int t,number,i,j,v,x;
scanf("%d",&t);
while(t--)
{
initial();
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
{
scanf("%d",&number);
for(j=1;j<=number;j++)
{
scanf("%d",&v);
map[i][v]=1;
}
}
x=hungary();
if(x==n)
printf("YES\n");
else
printf("NO\n");
}
return 0;
}
- poj 1469(匈牙利算法)
- POJ 1469 匈牙利算法
- POJ 1469 匈牙利算法
- poj 1469 COURSES 匈牙利算法
- poj-1469,1274 二分图匈牙利算法
- POJ:1469 COURSES(匈牙利算法模版题)
- poj 3041 匈牙利算法
- poj 3020 匈牙利算法
- POJ 1274 匈牙利算法
- 匈牙利算法POJ 1274
- POJ 2536 匈牙利算法
- POJ 2239 匈牙利算法
- POJ 2446 匈牙利算法
- POJ 3692(匈牙利算法)
- poj 3041 Asteroids 匈牙利算法
- POJ 3041 Asteroids (匈牙利算法)
- 匈牙利算法 poj 2466 Chessboard
- poj 3041 Asteroids 【匈牙利算法】
- 重度果粉必备 可同时为16台iPad充电的行李箱
- Android 中LayoutInflater的使用
- .net获取系统当前时间
- CPU 访问外设方法
- ASM Allocation Units(AU) 不同大小对性能的影响
- poj 1469(匈牙利算法)
- 最近的错误
- java for循环的几种写法
- 移动平均价
- ORACLE 内部运行机制图解
- linux/android uevent
- Linux 经验积累
- ARM 异常及中断
- Xerces C++ SAX 解析事件总结