hdu2063 最大匹配数(匈牙利算法)
来源:互联网 发布:免费端口映射的软件 编辑:程序博客网 时间:2024/05/01 00:53
#include <cstdio>#include <iostream>#include <algorithm>#include <queue>#include <cmath>#include <cstring>#include <stack>#include <set>#include <map>#include <vector>using namespace std;#define INF 0x2fffffff#define LL long long#define MAX(a,b) ((a)>(b))?(a):(b)#define MIN(a,b) ((a)<(b))?(a):(b)int k,n,m;vector<int> vec[1005];int vx[1005];int vy[1005];int vis[1005];int path(int u){ int si = vec[u].size(); for(int i = 0;i < si;i++){ int v = vec[u][i]; if(!vis[v]){ vis[v] = 1; if(vy[v] == -1 || path(vy[v])){ vx[u] = v; vy[v] = u; return 1; } } } return 0;}int maxmatch(){ int res = 0; memset(vx,-1,sizeof(vx)); memset(vy,-1,sizeof(vy)); for(int i = 1;i <= m;i++){ if(vx[i] == -1){ memset(vis,0,sizeof(vis)); res += path(i); } } return res;} int main(){ while(cin >> k,k){ cin >> m >> n; for(int i = 0;i <= n+m;i++){ vec[i].clear(); } int cnta = 1; int cntb = 1; for(int i = 0;i < k;i++){ int x,y; scanf("%d%d",&x,&y); vec[x].push_back(y); } cout << maxmatch() << endl;; } return 0;}
0 0
- hdu2063 最大匹配数(匈牙利算法)
- hdu2063(最大匹配+匈牙利算法)
- hdu2063 过山车--最大匹配数 & 匈牙利
- hdu2063 过山车 二分图/最大匹配(匈牙利算法)
- 【HDU2063】过山车(二分图最大匹配,匈牙利算法)
- hdu2063 过山车 二分图最大匹配 匈牙利算法
- HDU2063过山车 匈牙利二分图最大匹配
- hdu2063 过山车 (二分图匹配,匈牙利算法)
- hdu2063过山车(匈牙利算法)二分图匹配
- hdu2063(二分图匹配 匈牙利算法模板题)
- hdu2063 过山车 (匈牙利算法 二分匹配)
- hdu2063 过山车 二分匹配 匈牙利算法
- hdu2063[过山车] 二分图匹配 匈牙利算法
- hdu2063(最大权匹配匈牙利算法模板)
- HDU2063 匈牙利算法或者最大流
- HDU2063---过山车(匈牙利算法)
- HDOJ 2063过山车(匈牙利算法求最大匹配数)
- 最大匹配(匈牙利算法)
- leetcode 066 —— Plus One
- express4创建ReSTful APIs
- HDU 5321 Beautiful Set 美丽集合
- Linux下查看及修改进程打开的文件句柄数量
- 【LeetCode从零单排】No.135Candy(双向动态规划)
- hdu2063 最大匹配数(匈牙利算法)
- AFNetworking的使用
- 微软rdlc报表讨论与制作
- Android Button图片和文字都居左,且有一点间距
- Android 动态增加按钮 居于textview右侧
- openfire内存问题解决方法汇总
- TCP的状态 (SYN, FIN, ACK, PSH, RST, URG)
- SSL双向认证以及证书的制作和使用
- python计算时间差