摘要: 二分图最大匹配问题之匈牙利算法一:匈牙利算法的原理:从当前的匹配M(如果木有匹配,则取初始化匹配M为空集)出发,检查每一个未盖点,然后从它出发寻找可增广路,找到可增广路,则沿着这条可增广路进行扩充,直到不存在可增广路为止。二:根据从未盖点出发寻找可增广路搜索的方法,可以分成:1.DFS增广2.BFS增广3.多增广(Hopcroft-Karp算法)采用DFS思想搜索可增广路并求出最大匹配的代码如下:#define MAX 101//MAX为表示X集合和Y集合顶点个数最大值的符号常量int vis[MAX] ;//记录顶点访问状态的数组,为1时表示已经访问过,为0时表示未被访问过int nx,ny 阅读全文
posted @ 2012-08-14 22:44 Suhx 阅读(677) 评论(0) 推荐(0) 编辑
摘要: 非常经典的字典树问题 统计难题Time Limit: 4000/2000 MS (Java/Others)Memory Limit: 131070/65535 K (Java/Others)Total Submission(s): 10514Accepted Submission(s): 4328Problem DescriptionIgnatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀).Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师 阅读全文
posted @ 2012-08-14 22:10 Suhx 阅读(277) 评论(0) 推荐(0) 编辑
摘要: Flow ProblemTime Limit: 5000/5000 MS (Java/Others)Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 3301Accepted Submission(s): 1552Problem DescriptionNetwork flow is a well-known difficult problem for ACMers. Given a graph, your task is to find out the maximum flow for the weighted dir. 阅读全文
posted @ 2012-08-14 21:09 Suhx 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 最大流的三种模板以HDU 1532 Drainage Ditches为例 Drainage DitchesTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4501Accepted Submission(s): 2099Problem DescriptionEvery time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover 阅读全文
posted @ 2012-08-14 20:47 Suhx 阅读(176) 评论(0) 推荐(0) 编辑