匈牙利算法模板

来源:互联网 发布:win8网络连接在哪里 编辑:程序博客网 时间:2024/05/22 02:11

永远支持LG,转自:http://blog.csdn.net/cnyali/article/details/39268557

cnyali的博客


#include<stdio.h>#include<stdlib.h>int a[101][101],d[101],m,n,p[101];int dfs(int x){    int i,j,k;    for(i=1;i<=n;i++)        if(a[x][i] && !p[i]){            p[i]=1;            if(!d[i] || dfs(d[i])){                d[i]=x;                printf("[%d %d]----",x,i);                system("pause");                return 1;                     }        }    return 0;    }int main(){    int i,j,k;        scanf("%d%d",&n,&m);    int x,y;    for(i=1;i<=m;i++){        scanf("%d%d",&x,&y);                         a[x][y]=1;                          }    for(i=1;i<=n;i++){        for(j=1;j<=n;j++)p[j]=0;                          dfs(i);                  }    for(i=1;i<=n;i++)printf("%d %d\n",d[i],i);    system("pause");    return 0;    }
谢谢cnyali

1 0