poj 1274 The Perfect Stall

poj 1274 The Perfect Stall,第1张

poj 1274 The Perfect Stall
#include<iostream>#include<cstdio>#include<cstring>#include<string>#define N 250using namespace std;int n, m, lin[N], count;//lin[i]:第i个stall相连的cowbool map[N][N],used[N];bool search(int a){//判断是否能构成新的增广序列的函数    for(int j=1;j<=m;j++)        if(map[a][j] && !used[j]){//连通 没有用过 used[j] = 1;//标记 if(lin[j] == -1 || search(lin[j])){//无奶牛与之配对 或 构成增广序列     lin[j] = a;//记录该j产奶屋对应的奶牛序号a     return true; }        }    return false;}int main(){    int si, temp;    while(scanf("%d %d",&n,&m) != EOF){        count = 0;        memset(map, false, sizeof(map));        memset(lin, -1, sizeof(lin));        for(int i=1;i<=n;i++){ scanf("%d", &si); for(int j=1;j<=si;j++){     scanf("%d", &temp);     map[i][temp] = true; }        }        //匈牙利算法        for (int i=1;i<=n;i++){ memset(used, false, sizeof(used));//每次对循环中的used进行初始化 if(search(i))     count++;        }        printf("%dn", count);    }    return 0;}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4920418.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存