ZOJ 1364 Machine Schedule(二分图最大匹配)
2013-05-07 22:44
393 查看
最小顶点覆盖 = 二分图最大匹配
#include <iostream> #include <memory.h> #include <cstdio> using namespace std; const int maxn = 211; int g[maxn][maxn], n, m, k; char vis[maxn], fa[maxn]; bool dfs(int u){ for (int i = 1; i <= n + m; ++i){ if(g[u][i] && !vis[i]){ vis[i] = 1; if(fa[i] == 0 || dfs(fa[i])){ fa[i] = u; return true; } } } return false; } int hungary(){ int ans = 0; memset(fa, 0, sizeof(fa)); for (int i = 1; i <= n; ++i){ memset(vis, 0, sizeof(vis)); if(dfs(i)){ ans++; } } return ans; } int main(){ while (scanf("%d", &n) && n){ scanf("%d %d", &m, &k); memset(g, 0, sizeof(g)); for (int i = 0 ; i < k; ++i){ int id, ma, mb; scanf("%d %d %d", &id, &ma, &mb); if(ma * mb ){ g[ma][n + mb] = g[n + mb][ma]=1; //机器1的模式 和机器2的模式建边 } } printf("%d\n",hungary()); } return 0; }
相关文章推荐
- ZOJ 1364 Machine Schedule(二分图最大匹配)
- ZOJ 1364 Machine Schedule(二分图最大匹配)
- ZOJ 1882 Gopher II(二分图最大匹配)
- ZOJ 3646 Matrix Transformer(二分图最大匹配)
- 【二分图|最大匹配】ZOJ-1654 Place the Robots
- ZOJ 1654 Place the Robots 二分图最大匹配
- 【二分图|最大匹配】ZOJ-1516 Uncle Tom's Inherited Land
- zoj 1654 Place the Rebots 最大独立集转换成二分图最大独立边(最大匹配)
- ZOJ 1654 Place the Robots(二分图最大匹配)
- zoj - 2362 - Beloved Sons(二分图最大匹配)
- ZOJ 1654 Place the Robots (二分图最大匹配)
- ZOJ1654 Place the Robots(二分图最大匹配)
- ZOJ 1364 Machine Schedule (POJ 1325) (最小点覆盖数==最大匹配数)
- POJ 1469 && ZOJ 1140 --COURSES【二分图 && 最大匹配】
- ZOJ 1516 Uncle Tom's Inherited Land (二分图最大匹配)
- ZOJ 1364 Machine Schedule (二分图最大匹配)
- zoj 3988 Prime Set 【二分图最大匹配 + 思维】
- zoj 1516(二分图最大匹配)
- ZOJ 1157A Plug for UNIX(二分图最大匹配)
- ZOJ 1516--Uncle Tom's Inherited Land【二分图 && 求最大匹配数 && 经典建图】