zoukankan      html  css  js  c++  java
  • HDU 2063 过山车(模板—— 二分图最大匹配问题)

    题目链接:

    http://acm.hdu.edu.cn/showproblem.php?pid=2063

     解题思路:
    二分图最大匹配模板题。
    AC代码:
     1 #include<stdio.h>
     2 int e[1010][1010],match[1010],book[1010],z;
     3 int dfs(int u);
     4 int main()
     5 {
     6     int t,n,m,sum,i,j,a,b;
     7     while(scanf("%d",&t), t != 0)
     8     {
     9         scanf("%d%d",&n,&m);
    10         z=n+m;
    11         for(i=1;i<=z;i++)
    12             for(j=1;j<=z;j++)
    13                 e[i][j]=0;
    14         for(i=1;i<=t;i++)
    15         {
    16             scanf("%d%d",&a,&b);
    17             e[a][n+b]=1;
    18         }
    19         for(i=1;i<=z;i++)
    20             match[i]=0;
    21         for(sum=0,i=1;i<=z;i++)
    22         {
    23             for(j=1;j<=z;j++)
    24                 book[j]=0;
    25             if(dfs(i))
    26                 sum++;
    27         }
    28         printf("%d
    ",sum);
    29     }
    30     return 0;
    31 }
    32 int dfs(int u)
    33 {
    34     int i;
    35     for(i=1;i<=z;i++)
    36     {
    37         if(!book[i] && e[u][i]==1)
    38         {
    39             book[i]=1;
    40             if(!match[i] || dfs(match[i]))
    41             {
    42                 match[i]=u;
    43                 match[u]=i;
    44                 return 1;
    45             }
    46         }
    47     }
    48     return 0;
    49 }
     
  • 相关阅读:
    奇异值分解
    特征值和特征向量
    矩阵
    矢量化
    符号数组
    通用函数
    数据平滑
    多项式拟合
    协方差/相关矩阵/相关系数
    json
  • 原文地址:https://www.cnblogs.com/wenzhixin/p/7360988.html
Copyright © 2011-2022 走看看