zoukankan      html  css  js  c++  java
  • Day66:HDU2063过山车二分图最大匹配模板题

    题意:中文题,自己看吧

    思路:二分图最大匹配模板题目

    之前写的二分图是vector写的,https://www.cnblogs.com/OFSHK/p/12228048.html

    所以这次上一个数组写的代码,

    也算是一个模板

    注意一下清空和输入格式

    一定要注意清空啊,不然一直WAWAWA!!!!

    AC代码:

     1 #include<stdio.h>
     2 #include<iostream>
     3 #include<queue>
     4 #include<string.h>
     5 using namespace std;
     6 #define inf 0x3f3f3f3f
     7 
     8 const int N=550;
     9 int k,woman,man;
    10 int e[N][N],match[N];
    11 bool book[N];
    12 
    13 int dfs(int x)
    14 {
    15     for(int i=1; i<=man; i++)
    16     {
    17         if(book[i]==0&&e[x][i])
    18         {
    19             book[i]=1;
    20             if(match[i]==0||dfs(match[i]))
    21             {
    22                 match[i]=x;
    23                 return 1;
    24             }
    25         }
    26     }
    27     return 0;
    28 }
    29 
    30 int main()
    31 {
    32     //while(~scanf("%d %d %d",&k,&woman,&man))
    33     while(~scanf("%d",&k)&&k)
    34     {
    35         scanf("%d %d",&woman,&man);
    36         memset(e,0,sizeof(e));//注意清空,不然WA
    37         memset(match,0,sizeof(match));//清空。。
    38         for(int i=1; i<=k; i++)
    39         {
    40             int x,y;
    41             scanf("%d %d",&x,&y);
    42             e[x][y]=1;
    43         }
    44         int ans=0;
    45         for(int i=1; i<=woman; i++)
    46         {
    47             memset(book,0,sizeof(book));//注意清空位置
    48             if(dfs(i))
    49                 ans++;
    50         }
    51         printf("%d\n",ans);
    52     }
    53     return 0;
    54 }
    View Code
  • 相关阅读:
    2-分类
    1-确定变量间是否有关系—显著性检验
    git简单操作
    Hadoop HA和Hbase HA
    Docker入门操作
    内存数据库专题(MemCached 和Redis)
    Spark MLlib和Sprk GraphX
    Spark 调优
    Spark Streaming基础
    Spark SQL
  • 原文地址:https://www.cnblogs.com/OFSHK/p/12656019.html
Copyright © 2011-2022 走看看