hdu 2063 过山车 (二分匹配)
2013-06-07 14:06
239 查看
#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; }
相关文章推荐
- HDU 2063 过山车 第一道最大二分匹配
- HDU 2063 过山车 二分匹配
- HDU 2063 过山车(二分匹配-hungary)
- HDU 2063 BNUOJ 6207 过山车 (最大流or二分匹配)
- hdu 2063 过山车 二分匹配(匈牙利算法)
- HDU-2063-过山车【匈牙利算法】【二分匹配】
- HDU 2063 过山车(基础二分匹配)
- hdu 2063 过山车 (二分匹配)
- hdu 2063 过山车 (二分匹配)
- HDU 2063 过山车 最大二分匹配
- hdu 2063 过山车 基础最大二分匹配
- HDU 2063:过山车【二分匹配】
- HDU 2063 过山车(最大二分匹配)
- hdu 2063 过山车 二分匹配(匈牙利算法)
- hdu 2063 过山车 二分匹配 匈牙利
- 过山车 HDU - 2063 (二分匹配)
- hdu 2063 过山车 二分匹配+hk算法
- HDU 2063 过山车(二分匹配入门)
- HDU 2063.过山车【二分图、二分匹配初接触】【8月3】
- HDU 2063过山车(二分最大匹配之最大匹配)