标签:clu esc next 最大 sizeof more describe ret 二分图匹配
Input
Output
Sample Input
2 3 3 3 1 2 3 2 1 2 1 1 3 3 2 1 3 2 1 3 1 1
Sample Output
YES NO
题意:输入p门课和n个学生,共1-p行,每行先输入学生总数n,再输入学生编号,问,能否满足,每个学生只选一门课,每门课有一个学生。
思路:又是最大匹配的水题,我很怀疑学长这次是先把各个oj上的水题放到前10道,然后后面的就6到飞起的那种
#include<stdio.h> #include<string.h> #define N 330 #define M 330 int e[N][M],book[M],match[M]; int n,m; int dfs(int u) { int i; for(i = 1; i <= m; i ++) { if(!book[i]&&e[u][i]) { book[i] = 1; if(!match[i]||dfs(match[i])) { match[i] = u; return 1; } } } return 0; } int main() { int i,j,t2,sum,t; scanf("%d",&t); while(t--) { memset(match,0,sizeof(match)); memset(e,0,sizeof(e)); scanf("%d%d",&n,&m); for(i = 1; i <= n; i ++) { scanf("%d",&sum); for(j = 1;j <= sum; j ++) { scanf("%d",&t2); e[i][t2] = 1; } } sum = 0; for(i = 1; i <= n; i ++) { memset(book,0,sizeof(book)); if(dfs(i)) sum ++; } if( sum == n) printf("YES\n"); else printf("NO\n"); } return 0; }
【二分图匹配入门专题1】F - COURSES poj1469【最大匹配--匈牙利算法模板题】
标签:clu esc next 最大 sizeof more describe ret 二分图匹配
原文地址:http://www.cnblogs.com/chengdongni/p/7352288.html