匈牙利算法模板题
有n门课程,每门课程可能有不同时间,不同时间的课程等价。
问不冲突的情况下最多能选多少门课。
建立二分图,一边顶点表示不同课程,另一边表示课程的时间(hash一下)。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#defi...
分类:
其他好文 时间:
2014-07-02 08:05:03
阅读次数:
257
一个男女搭配的关系图,看可以凑成多少对,基本和最原始的一个二分图谜题一样了,就是 一个岛上可以凑成多少对夫妻的问题。
所以是典型的二分图问题。
使用匈牙利算法,写成两个函数,就非常清晰了。
本程序还带分配释放程序,当然oj一般不需要。但是好的程序一定要。
#include
#include
int K, M, N, a, b;
int *linker;
bool **gra, *use...
分类:
其他好文 时间:
2014-06-22 21:50:52
阅读次数:
164
本题就是先判断是否可以组成二分图,然后用匈牙利算法求出最大匹配。
到底如何学习一种新算法呢?
我也不知道什么方法是最佳的了,因为看书本和大牛们写的匈牙利算法详细分析,看了差不多两个小时没看懂,最后自己直接看代码,居然不到半个小时看懂了。然后就可以直接拿来解题啦。
比如topcoder上有这个算法的很详细的分析,真没看懂。
代码居然比分析更清晰了?我也不好下结论。
但是我觉...
分类:
其他好文 时间:
2014-06-22 21:43:57
阅读次数:
210
二分图最大匹配的匈牙利算法模板题。由题目易知,需求二分图的最大匹配数,采取匈牙利算法,并采用邻接表来存储边,用邻接矩阵会超时,因为邻接表复杂度O(nm),而邻接矩阵最坏情况下复杂度可达O(n^3)。代码:#include #include #include #include #include #in...
分类:
其他好文 时间:
2014-06-15 11:53:19
阅读次数:
207
poj3041解题代码,以及对匈牙利算法的一些基础进行解析供热切想要学习该算法的新手参考...
分类:
其他好文 时间:
2014-06-08 15:24:37
阅读次数:
228
一开始还没看懂这个算法,后来看了陶叔去年的PPT的实例演示才弄懂用一个lx[]和ly[]来记录X和Y集合中点的权值,有个定理是
lx[i]+ly[j]==w[i][j](边权值) 则该点是最佳匹配,因为首先
那个不等式肯定要>=的,否则就不满足题意了,如果是>则可以去匹配更有价值的边或者把权值降下来...
分类:
其他好文 时间:
2014-06-05 15:55:49
阅读次数:
213
不断找增广路,直到没有增广路,每找到一条增广路匹配数就加1 //hungary const
int X=100,Y=100;int match[Y];// initial to -1bool vis[Y];int g[X][Y];bool
dfs(int x){ for(int y=1;y<=Y;y...
分类:
其他好文 时间:
2014-05-31 20:49:41
阅读次数:
247
匈牙利算法。 1 #include 2 #include 3 4 #define MAXNUM
1005 5 6 char map[MAXNUM][MAXNUM]; 7 char visit[MAXNUM]; 8 int son[MAXNUM]; 9 10
int find(int x, i...
分类:
其他好文 时间:
2014-05-31 16:54:26
阅读次数:
291
美国的贝尔实验室设计了最初的C语言刻在UNIX操作系统距今已有三四十年你在屏幕前凝视数据的缱绻我却在旁轻轻敲打键盘把你的梦想展现循环 递归 贪心 动规
是谁的从前喜欢在匈牙利算法中你我牵手的画面经过MSRA门前我以大牛之名许愿思念像斐波那契数列般漫延当软工沦落在设计的文档间算法依旧是永垂不朽的诗篇我...
分类:
其他好文 时间:
2014-05-15 11:39:13
阅读次数:
260
这是一个关于Posix线程编程的专栏。在阐明概念的基础上,本节将向您详细讲述Posix线程库API及创建、结束线程。...
分类:
编程语言 时间:
2014-05-11 21:11:01
阅读次数:
492