poj 1274 The Perfect Stall(二分…
来源:互联网 发布:ar9565 linux 编辑:程序博客网 时间:2024/06/11 20:48
题意:FJ有N头cow ,M个stall for the milk 每头只愿在自己喜欢的stall上产奶,求最大匹配。
思路:简单的二分匹配。
//332K 0MS
#include <stdio.h>
#include <string.h>
#define N 205
int mat[N][N],vis[N],xM[N],yM[N];
int n,m;
bool DFS(int u)
{
for (int v =1;v <= n;v ++)
if (mat[u][v] && !vis[v])
{
vis[v] = 1;
if (yM[v] == -1 ||DFS(yM[v]))
{
yM[v] = u,xM[u] = v;
return true;
}
}
returnfalse;
}
int MaxMatch ()
{
int res =0;
memset(xM,-1,sizeof(xM));
memset(yM,-1,sizeof(yM));
for (int u =1;u <= n;u ++)
if (xM[u] == -1)
{
memset (vis,0,sizeof(vis));
if (DFS(u))
res ++;
}
returnres;
}
int main ()
{
intu,v,s;
while(~scanf ("%d%d",&n,&m))
{
memset (mat,0,sizeof(mat));
for (u = 1;u <= n;u ++)
{
scanf ("%d",&s);
while (s --)
{
思路:简单的二分匹配。
//332K
#include <stdio.h>
#include <string.h>
#define N 205
int mat[N][N],vis[N],xM[N],yM[N];
int n,m;
bool DFS(int u)
{
}
int MaxMatch ()
{
}
int main ()
{