ickchen2

1466 gilr and boys

POJ 1466 GIRLS AND BOYS

很囧的GIRLS AND BOYS 的代码....加上注解就错..没加就过了..
#include<iostream>
#include<cstdio>
#include<vector>
#define M 2000
using namespace std;
int m,n;
int match[M];
int v[M];
vector<int>g[M];
int dfs(int p)
{
    int i,t;
    for(i=0;i<g[p].size();i++)
    {
        if(!v[g[p][i]])
        {
            v[g[p][i]]=1;
            t=match[g[p][i]];
            match[g[p][i]]=p;
            if(t==-1||dfs(t))return 1;
            match[g[p][i]]=t;
        }
    }
    return 0;
}
int mat()
{
    int i,res=0;
    memset(match,-1,sizeof(match));
    for(i=0;i<n;i++)
    {
        memset(v,0,sizeof(v));
        if(dfs(i))res++;
    }
    return res;
}
int main()
{
    while(scanf("%d",&n)>0)
    {
        memset(g,0,sizeof(g));
        for(int i=0;i<n;i++)
        {
            int a;
   scanf("%d",&a);
            getchar();
            getchar();
            getchar();
            scanf("%d",&m);
   getchar();
   getchar();
            for(int j=0;j<m;j++)
            {
                int b;
                scanf("%d",&b);
                //if(b<a)continue;//注意这行..加了会WA的!
                g[a].push_back(b);
            }
        }
        printf("%d\n",n-mat()/2);
    }
}

posted on 2008-08-17 17:27 神之子 阅读(183) 评论(0)  编辑 收藏 引用 所属分类: 二分匹配


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜