二分匹配之HDU1150 Machine Schedule
来源:互联网 发布:物流网络包括 编辑:程序博客网 时间:2024/05/16 01:06
求最小点覆盖数。
唯一需要注意的是起始机器都为0,所以输入时候需要0状态能完成的工作就可以直接完成,不需要放到二分匹配里面去了。
#include <stdio.h>#include <ctype.h>#include <string.h>#include <stdlib.h>#include <limits.h>#include <math.h>#include <algorithm>#include <stack>#include <queue>#include <vector>#include <map>#include <set>#include <string>#include <sstream>using namespace std;#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1typedef long long LL;const double pi=4.0*atan(1.0);const int MAXN=10005;vector<int> g[MAXN];int used[MAXN],linker[MAXN];int uN;int dfs(int u){for(int i=0;i<g[u].size();i++){int v=g[u][i];if(!used[v]){used[v]=1;if(linker[v]==-1||dfs(linker[v])){linker[v]=u;return 1;}}}return 0;}int hungary(){memset(linker,-1,sizeof(linker));int ans=0;for(int i=1;i<uN;i++){memset(used,0,sizeof(used));if(dfs(i))ans++;}return ans;}int main(){int n,m;int i,j,k;int x,y;while(scanf("%d",&n)!=EOF){if(n==0)return 0;scanf("%d%d",&m,&k);for(i=0;i<=n;i++)g[i].clear();for(i=0;i<k;i++){scanf("%d%d%d",&j,&x,&y);if(x==0||y==0)continue;g[x].push_back(y);}uN=n;printf("%d\n",hungary());}return 0;}
0 0
- 二分匹配之HDU1150 Machine Schedule
- hdu1150—Machine Schedule(二分图最大匹配)
- 【图算法之二分图】HDU1150---Machine Schedule
- hdu1150 Machine Schedule
- hdu1150 Machine Schedule
- HDU1150:Machine Schedule
- HDU1150-Machine Schedule
- hdu1150 Machine Schedule
- HDU1150 Machine Schedule
- hdu1150 Machine Schedule
- HDU1150-- Machine Schedule( 二分图最小顶点覆盖)
- hdu1150 Machine Schedule (二分图的最小顶点覆盖)
- Machine Schedule (二分匹配)
- hdu1150——Machine Schedule
- 二分图匹配 Hdu1150
- POJ1325 Machine Schedule 二分图最大匹配
- hdu Machine Schedule 1150 二分图匹配
- POJ 1325 Machine Schedule (最大二分匹配)
- 开机出现checking file system on C或者D E F盘符的解决方法
- systemd详解
- Centos6/7来网络引导(pxe)安装centos
- C/C++程序员必须熟练应用的开源项目
- HDU 5493 Queue(线段树啊 单点更新)
- 二分匹配之HDU1150 Machine Schedule
- 系统26M晶体贴错导致的异常问题解决过程
- javascript实现动态添加内容与删除内容
- Android实现点击通知栏后,先启动应用再打开目标Activity
- Java中的“虚函数”,抽象类的抽象函数
- linux常用命令(61):ps命令
- 计算机三级网络技术DHCP
- java基本类型和包装器类【转】
- Transmission Strategy for Error Resilent