POJ 1325 Machine Schedule(匈牙利—最小点覆盖)
来源:互联网 发布:东北大学软件学院好吗 编辑:程序博客网 时间:2024/05/16 11:24
题目连接:POJ 1325 Machine Schedule
最小点覆盖,注意开始是在零状态,邻接表好快哦,0ms~
#include <iostream>#include <cstring>#include <cstdio>using namespace std;const int MAX_N = 1000 + 50;const int MAX_M = 100 + 10;struct Edge{ int v, next;};Edge e[MAX_N];int head[MAX_M], link[MAX_M], cnt, n, m, k;bool vis[MAX_M];void addEdge(int u, int v){ e[cnt].v = v; e[cnt].next = head[u]; head[u] = cnt++;}bool DFS(int u){ for(int i = head[u]; i != -1; i = e[i].next) { if(!vis[e[i].v]) { vis[e[i].v] = 1; if(link[e[i].v] == -1 || DFS(link[e[i].v])) { link[e[i].v] = u; return true; } } } return false;}int MaxMatch(){ int ans = 0; memset(link, -1, sizeof(link)); for(int i = 0; i < n; i++) { memset(vis, 0, sizeof(vis)); if(DFS(i)) ans++; } return ans;}int main(){ while(scanf("%d", &n) != EOF && n) { scanf("%d%d", &m, &k); memset(head, -1, sizeof(head)); cnt = 0; int u, v, num; for(int i = 0; i < k; i++) { scanf("%d%d%d", &num, &u, &v); if(u == 0 || v == 0) continue; addEdge(u, v); } printf("%d\n", MaxMatch()); } return 0;}
0 0
- POJ 1325 Machine Schedule(匈牙利—最小点覆盖)
- POJ 1325 Machine Schedule 最小点覆盖
- poj 1325 Machine Schedule--最小点覆盖
- poj 1325 Machine Schedule (最小点覆盖)
- POJ 1325 Machine Schedule (二分图最小点集覆盖 匈牙利算法)
- poj 1325 Machine Schedule(二部图最小点覆盖集 最大匹配 匈牙利算法)(简单)
- poj 1325 Machine Schedule(最小点覆盖即最大匹配,匈牙利算法)
- POJ-1325-Machine Schedule-最小点覆盖(二分图-匈牙利算法)
- poj 1235 Machine Schedule 最小点覆盖
- POJ 1325 Machine Schedule 二分图最小点覆盖
- POJ 1325 Machine Schedule 二分图 最小点覆盖
- POJ 1325 Machine Schedule(二分匹配 最小点覆盖)
- POJ 1325 Machine Schedule(最小点覆盖)
- POJ - 1325 Machine Schedule 二分图 最小点覆盖
- Poj 1325 Machine Schedule【二分匹配-------最小点覆盖】
- poj 1325 Machine Schedule(最小点集覆盖)
- hdu 1150 Machine Schedule 最小覆盖点 匈牙利算法
- 最小覆盖 Machine Schedule POJ 1325
- Project Ruler 算法练习之除数问题
- I/O非阻塞函数实践:epoll
- 记录几个后门工具
- .NET CLR是什么
- MD5算法(Java)
- POJ 1325 Machine Schedule(匈牙利—最小点覆盖)
- Android 用户界面---操作栏(Action Bar 一)
- Balanced Binary Tree
- Android 用户界面---操作栏(Action Bar 二)
- GDI+学习笔记(七)保存简单图像
- Android 用户界面---操作栏(Action Bar 三)
- UML类图关系(继承、实现、依赖、关联、聚合、组合)
- Android 用户界面---操作栏(Action Bar 四)
- WebBrowser控件跨域访问页面内容