(匈牙利模板)二分图匹配-poj-2226
来源:互联网 发布:plu直播软件 编辑:程序博客网 时间:2024/06/04 20:00
匈牙利算法
用于二分图最大匹配。
步骤:
1、这是待匹配的二分图。
2、开始匹配第一个A1,随便匹配第一个B1,肯定会成功的啦。然后匹配左边第二个A2,发现匹配不成功。
3、于是B1断开原有连接,让原有的左边A1去找下一个匹配,发现下一个匹配成功。
4、然后匹配A3,发现B1已经连接,那就断开原有连接。但是断开原有连接,发现A2匹配失败了,于是A3继续匹配下一个,发现匹配成功。
5、接下来匹配A4.
这就是匈牙利算法,我跑了题目大概是32ms。
或者是建立一个超级源和一个超级汇。跑最大流求二分图最大匹配,大概是16ms。
匈牙利模板:
然后讲一下poj2226
题意:有一片N×M的草地,上面有一些方格有泥巴,现在需要横横竖竖放一些任意长度的木条,但不能铺在草地只能铺在木板上,木板可以被其他木板覆盖,问最少需要几条木板。
解法:对于每一个泥巴方块,要么是被横木板覆盖,要么是被竖着的木板覆盖。
把每一段横着的连续条条看作一个顶点,把每一段竖着的连续条条看作一个顶点,如果横着的条条和竖着的条条有交点,那么就从一个顶点到另一个顶点连一条边,每一次连的边和泥巴方块是一一对应的。所以现在的问题就变成,求这个二分图的最小点覆盖数。由二分图公式:最小点覆盖数(设有一个有n个顶点的集合S,图中任意一条边都有至少一个顶点属于这个集合。PS:也有可能一条边的两个点都属于这个集合)=最大匹配数,即可知只要求最大匹配就OK。
0 0
- (匈牙利模板)二分图匹配-poj-2226
- poj 匈牙利二分匹配 模板 poj题目
- 匈牙利算法(二分图匹配)模板
- 二分图匹配(匈牙利算法模板)
- 二分图最大匹配匈牙利算法(poj)3041(模板)
- ACM_模板_二分图匹配(匈牙利算法)-DFS
- 二分图最大匹配(匈牙利算法-DFS增广模板)
- HDU 2063 过山车 【二分图最大匹配(匈牙利模板)】
- 【匈牙利算法】二分图最大匹配(模板)
- hdu2063(二分图匹配 匈牙利算法模板题)
- 二分图最大匹配模板(匈牙利算法)
- 匈牙利算法模板 二分图最大匹配
- 二分匹配(匈牙利算法)【模板】
- 二分匹配(匈牙利算法)模板
- poj 2226 Muddy Fields 二分匹配匈牙利
- poj题目1469 COURSES (二分图匹配,匈牙利算法)
- POJ 3041 Asteroids(二分图匹配+匈牙利算法)
- POJ 1469 COURSES(匈牙利算法二分图最大匹配)
- HDU - 5198 - Strange Class && 5199 - Gunner
- C106a卡雷尔机器人运行环境的说明
- java spring mvc 项目1
- Injection Flaws
- 房东给发货给法国和规范工程规划发出报告v年过年
- (匈牙利模板)二分图匹配-poj-2226
- YourKit Java Profiler 2015 build 15042破解
- ZOJ 3321 Circle(并查集啊)
- 我的java学习笔记(18)关于内部类(part 3)
- Javascript如何传递大数据传给Objective-C
- 代码的简洁与合理
- 利用分类转码(打印中文)
- SQLiteDatabase数据库操作详解
- JSON.parse()和JSON.stringify()