poj 图相关之3041 Asteroids
来源:互联网 发布:基于java的2048小游戏 编辑:程序博客网 时间:2024/06/16 02:12
poj 图相关之3041 Asteroids
第一次接触匈牙利算法,可以参考博客:
http://blog.csdn.net/dark_scope/article/details/8880547
而这道题把每一个坐标的横纵坐标看做是二分图的左右两边,问题就转化为了求最小点覆盖数=最大匹配数
#include<iostream>#include<cstdio>#include<cstring>#define MAXNUM 505using namespace std;bool map[MAXNUM][MAXNUM], vis[MAXNUM];int link[MAXNUM], N, K, ans;bool dfs(int x){ int i, j; for (i = 1; i <= N; i++) { if (!vis[i] && map[x][i]) { vis[i] = 1; if (link[i] == 0 || dfs(link[i])) { link[i] = x; return true; } } } return false;}void search(void){ int i, j; for (i = 1; i <= N; i++) { memset(vis, 0, sizeof(vis)); if (dfs(i)) ans++; }}int main(void){ int i, j, a, b; scanf("%d%d", &N, &K); memset(map, 0, sizeof(map)); memset(link, 0, sizeof(link)); for (i = 0; i < K; i++) { scanf("%d%d", &a, &b); map[a][b] = true; } ans = 0; search(); printf("%d\n", ans);}
阅读全文
0 0
- poj 图相关之3041 Asteroids
- poj 3041 Asteroids 二分图
- 【POJ 3041 Asteroids】+ 二分图
- 【二分图】poj 3041 Asteroids
- Asteroids(poj 3041,二分图最大匹配)
- poj 3041 Asteroids 二分图匹配
- poj 3041 Asteroids (二分图匹配)
- POJ 3041 Asteroids //简单二分图
- POJ 3041 Asteroids (匈牙利 二分图)
- POJ 题目3041 Asteroids(二分图)
- POJ 3041 - Asteroids(二分图匹配)
- 【图论】【二分图匹配】[POJ 3041]Asteroids
- [二分图最大匹配] poj 3041 Asteroids
- [POJ 3041]Asteroids[二分图匹配]
- POJ 3041 Asteroids (二分图最大匹配)
- poj 3041 Asteroids 二分图最大匹配
- POJ 3041-Asteroids(二分图匹配)
- POJ 3041 Asteroids 二分图最大匹配
- 立个flag
- Oracle数据库常用的5种锁定
- 06.25 如何判断数据类型
- 最简单的数据结构:线性表(一)
- Uva1593 代码对齐
- poj 图相关之3041 Asteroids
- MarkDown基础
- Redis 安装启动相关知识
- Redis的基本命令
- hdu2682
- C++模块化思想的应用
- Day17-request
- CentOS7 安装配置 MySQL5.7.18
- 文章标题