HDU 2063 过山车(模板—— 二分图最大匹配问题)
2017-08-14 23:17
281 查看
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=2063
解题思路:
二分图最大匹配模板题。
AC代码:
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\n",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 }
相关文章推荐
- HDU 2063 过山车(二分图最大匹配问题+最大流 超时解法)
- 【HDU 2063】过山车(二分图最大匹配模板题)
- HDU 2063 过山车(二分图最大匹配问题,匈牙利算法)
- HDU 2063 过山车 【二分图最大匹配(匈牙利模板)】
- HDU 2063 过山车(二分图最大匹配问题)
- 【HDU 2063】过山车(二分图最大匹配模板题)
- HDU - 2063 过山车(最大匹配数)(模板)
- (step6.3.1)hdu 2063(过山车——二分图的最大匹配)
- HDU 2063 过山车 【匈牙利算法,二分图最大匹配】
- HDU:2063 过山车(二分图最大匹配)
- HDU 2063--过山车【二分图的最大匹配】
- HDU 2063 过山车【二分图最大匹配】
- HDU 2063过山车 二分图最大匹配 匈牙利算法
- hdu 2063 过山车(二分图最大匹配,2级)
- hdu 2063 过山车 ( 二分图最大匹配水过 .)
- hdu 2063 过山车(二分图最大匹配基础)
- HDU 2063 过山车(二分图最大匹配:简单题)
- hdu 2063 过山车(二分图最大匹配,2级)
- HDU 2063 过山车【二分图最大匹配】
- hdu 2063 过山车 (最大匹配 匈牙利算法模板)