poj3041 最小点覆盖即最大匹配(匈牙利算法)(模板)
来源:互联网 发布:sql server 实训报告 编辑:程序博客网 时间:2024/05/16 12:05
<pre>#include <iostream>#include <cmath>#include <cstdio>#include <string>#include <cstring>#include <algorithm>#include <vector>#include <queue>#include <utility>#define inf (1<<28)#define ll long long#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define mid ((l+r)>>1)using namespace std;#define MAXN 505bool map[MAXN][MAXN], vis[MAXN];int match[MAXN];int n, k;bool dfs(int u){ for(int i=1;i<=n;i++) { if(!vis[i]&&map[u][i]){ vis[i]=true; if(match[i]==-1||dfs(match[i])){//没被选或者这个点虽然被选了,但是可以增广 match[i]=u; return true; } } } return false;}int Maxmatch(){ int ret=0; memset(match,-1,sizeof(match)); for(int i=1;i<=n;i++) { memset(vis,false,sizeof(vis)); if(dfs(i))ret++; } return ret;}int main(){ while( scanf( "%d%d", &n, &k) == 2) { int x, y; memset( map, false, sizeof map); for( int i = 1; i <= k; i ++) { scanf( "%d%d", &x, &y); map[x][y] = true; } int ans = Maxmatch(); printf( "%d\n", ans); } return 0;}
1 0
- poj3041 最小点覆盖即最大匹配(匈牙利算法)(模板)
- POJ3041 最小点覆盖 最大匹配数 回顾匈牙利算法
- POJ3041 二分图(性质)最小点覆盖等于最大匹配数(匈牙利模板题)
- POJ3041《Asteroids》方法:匈牙利算法(最小点覆盖数==最大二分匹配数)
- poj3041 最小点覆盖==二分图最大匹配 匈牙利算法求解最大匹配问题(运用DFS)
- poj 1325 Machine Schedule(最小点覆盖即最大匹配,匈牙利算法)
- 匈牙利算法,求最大匹配数即最小顶点覆盖
- 模板_matlab 匈牙利算法(最大匹配数/最小覆盖点)
- hdu 1054 Strategic Game(模板) 最大二分匹配,最小点覆盖 匈牙利算法
- 最小点集覆盖与最大匹配之匈牙利算法
- uva11419 【最大二分匹配求最小点覆盖 匈牙利算法】
- POJ3041最大匹配匈牙利算法
- POJ3041 二分图最小点覆盖(匈牙利算法)
- poj3041 Asteroids 最小点覆盖 二分图 匈牙利算法BFS
- poj3041-Asteroids(最小点覆盖,最大匹配)
- 最大匹配(1)--poj3041(最大匹配的应用 最大匹配=最小点覆盖数)
- poj3041 匈牙利算法 二分图最大匹配
- poj 1325 Machine Schedule(二部图最小点覆盖集 最大匹配 匈牙利算法)(简单)
- 【个人笔记】Linux学习笔记(持续更新)
- 13.IntelliJ IDEA 编译方式介绍 - IntelliJ IDEA 使用教程
- JAVA面向对象学习
- 简单自定义Toast
- 14.IntelliJ IDEA 项目相关的几个重要概念介绍 - IntelliJ IDEA 使用教程
- poj3041 最小点覆盖即最大匹配(匈牙利算法)(模板)
- 15.Hello World 项目创建与项目配置文件介绍 - IntelliJ IDEA 使用教程
- Android开发使用的常见第三方框架汇总
- android-使用AsyncTask做下载进度条
- EF框架—Code-First
- windows程序消息处理流程
- iOS开发中nil、Nil、NULL和[NSNull null]的区别
- 直接选择排序
- 第九周-不定工资数