hdu2063 过山车--最大匹配数 & 匈牙利
2016-07-25 14:34
357 查看
原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=2063
一个模板题,直接dfs就行。
一:分析
一个模板题,直接dfs就行。
二:AC代码
#define _CRT_SECURE_NO_DEPRECATE #include<string> #include<iostream> #include<queue> #include<algorithm> using namespace std; int pre[510]; int flag[510][510]; int vis[510]; int k, m, n; int dfs(int x) { for (int i = 1; i <= n; i++) { if (!vis[i] && flag[x][i]) { vis[i] = 1; if (!pre[i] || dfs(pre[i])) { pre[i] = x; return 1; } } } return 0; } int main() { while (~scanf("%d", &k) && k) { memset(flag, 0, sizeof(flag)); memset(pre, 0, sizeof(pre)); scanf("%d%d", &m, &n); int a, b; for (int i = 0; i < k; i++) { scanf("%d%d", &a, &b); flag[a][b] = 1; } int sum = 0; for (int i = 1; i <= m; i++) { memset(vis, 0, sizeof(vis)); if (dfs(i)) sum++; } printf("%d\n", sum); } return 0; }
相关文章推荐
- OC和Swift的桥接
- JS传递参数
- Material Design系列,自定义Behavior之上滑显示返回顶部按钮
- 无法启动计算机上的服务W3SVC
- js时间基本操作
- 伟景行 citymaker 从入门到精通(3)——点击地图获取坐标,点击模型获取模型信息和属性信息
- 5-26 Windows消息队列
- id Software公司介绍
- hdu 4301 Divide Chocolate (dp )
- 安卓逆向学习第一天
- Shader Scale
- java中保留几位小数
- 解决Url带中文参数乱码问题
- Android表情的处理方案记录
- python2 和python3共存下问题
- 数据仓库的一些基本知识
- MySQL 5.6 (Win7 64位)下载、安装与配置图文教程
- Java中字符串中子串的查找共有四种方法(indexof())
- 如何把ppt转换成word文档格式
- 数组中只出现一次的元素