zoukankan      html  css  js  c++  java
  • hoj 2801 The Perfect Stall 二分图的最大匹配

    /*

     

    题目:

           每头奶牛喜欢在不同的地方产奶,每个地方只能容纳一头奶牛,问最多的产奶的地方

     

    分析:

           在产奶地与奶牛之间建立匹配,然后用hungry算法做,比如奶牛a喜欢在q地产奶,则

           g[a][q] = true,建图即可

     

    */

    #include <iostream>

    #include <cstdio>

    #include <cstring>

    using namespace std;

    #define X 202

    int xm[X],ym[X],n,m;

    bool g[X][X],use[X];

    int dfs(int u)

    {

           for(int v=1;v<=m;v++)

                  if(g[u][v]&&!use[v])

                  {

                         use[v] = true;

                         if(ym[v]==-1||dfs(ym[v]))

                         {

                                ym[v] = u;

                                xm[u] = v;

                                return true;

                         }

                  }

                  return false;

    }

    int hungry()

    {

           memset(xm,-1,sizeof(xm));

           memset(ym,-1,sizeof(ym));

           int ret = 0;

           for(int u=1;u<=n;u++)

                  if(xm[u]==-1)

                  {

                         memset(use,false,sizeof(use));

                         if(dfs(u))

                                ret++;

                  }

                  return ret;

    }

    int main()

    {

           freopen("sum.in","r",stdin);

           freopen("sum.out","w",stdout);

           while(cin>>n>>m)

           {

                  int t,x;

                  memset(g,false,sizeof(g));

                  for(int i=1;i<=n;i++)

                  {

                         scanf("%d",&t);

                         while(t--)

                         {

                                scanf("%d",&x);

                                g[i][x] = true;

                         }

                  }

                  printf("%d\n",hungry());

           }

           return 0;

    }

  • 相关阅读:
    PKU JudgeOnline 题目分类
    调试时拼凑带端口的完整网址/域名
    智能电脑监控器,完美解决想监控别人在自己电脑上的一切操作。
    如何清理LDF文件
    使用母版页后FindConttol需要注意
    【外刊IT评论】代码覆盖率:80%,不能少
    推荐2本普通人参悟的书
    处理在母版页加AJAX环境下处理滚动条回发保持不动的问题
    虚拟目录中的web.config不被上级目录的web.config影响的处理
    C++中^符号的意思
  • 原文地址:https://www.cnblogs.com/yejinru/p/2436083.html
Copyright © 2011-2022 走看看