标签:
Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 8470 Accepted Submission(s): 3890
#include<stdio.h> #include<string.h> #define MAX 1100 int vis[MAX],map[MAX][MAX],stu[MAX]; int t; int find(int x) { int i; for(i=0;i<t;i++) { if(map[x][i]&&vis[i]==0) { vis[i]=1; if(stu[i]==0||find(stu[i])) { stu[i]=x; return 1; } } } return 0; } int main() { int n,m,i,j,sum,a,b; while(scanf("%d",&t)!=EOF) { memset(stu,0,sizeof(stu)); memset(map,0,sizeof(map)); for(i=0;i<t;i++) { scanf("%d: (%d)",&a,&n); while(n--) { scanf("%d",&b); map[a][b]=1; } } sum=0; for(i=0;i<t;i++) { memset(vis,0,sizeof(vis)); if(find(i)) sum++; } printf("%d\n",t-sum/2); } return 0; }
hdoj 1068 Girls and Boys【匈牙利算法+最大独立集】
标签:
原文地址:http://www.cnblogs.com/tonghao/p/4662073.html