zoukankan      html  css  js  c++  java
  • hdu 2063 过山车 (二分匹配)

    #include<stdio.h>
    #include<string.h>
    int map[510][510],vis[510],a[510],b[510],n,m,k;
    int f1(int u)
    {
        int v;
        for(v=1;v<=n;v++)
        {
            if(map[u][v] && !vis[v])
            {
                vis[v]=1;
                if(!b[v] || f1(b[v]))
                {
                    a[u]=v;b[v]=u;return 1;
                }
            }
        }
        return 0;
    }
    int f2()
    {
        int i,ans=0;
        for(i=1;i<=m;i++)
        {
            if(!a[i])
            {
                memset(vis,0,sizeof(vis));
                if(f1(i)) ans++;
            }
        }
        return ans;
    }
    int main()
    {
        int a1,b1;
        while(scanf("%d",&k)==1 && k)
        {
            scanf("%d%d",&m,&n);
            memset(map,0,sizeof(map));
            memset(a,0,sizeof(a));
            memset(b,0,sizeof(b));
            while(k--)
            {
                scanf("%d%d",&a1,&b1);
                map[a1][b1]=1;
            }
            printf("%d\n",f2());
        }
        return 0;
    }

  • 相关阅读:
    ASP.NET Core 进程内(InProcess)托管
    ASP.NET Core 中的 Main 方法
    ASP.NET Core Web 项目文件
    5)
    4)
    单词
    html5单词
    3)
    2)
    1)
  • 原文地址:https://www.cnblogs.com/java20130726/p/3218221.html
Copyright © 2011-2022 走看看