http://acm.fzu.edu.cn/problem.php?pid=1202二分图最大匹配,问哪些边是必要的,O(n^3)的方法删边的时候把连接关系也要删掉,如果在此基础上无法找到增广路,加入答案,恢复连接关系,如果能找到,连接关系不用恢复(因为要n对匹配,这组匹配新的了剩下的要留给别的组)...
分类:
其他好文 时间:
2014-06-05 19:14:40
阅读次数:
350
题目来源:Light OJ 1258 Making Huge Palindromes
题意:末尾添加最少的字符是使输入的串变成回文 输出长度
思路:直接KMP匹配出它和它反串的最大匹配 n减去它就是要添加的数量
#include
#include
#include
using namespace std;
const int maxn = 1000010;
char a[maxn], ...
分类:
其他好文 时间:
2014-06-05 01:14:56
阅读次数:
240
不断找增广路,直到没有增广路,每找到一条增广路匹配数就加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
初级:基本算法:枚举:1753 2965贪心:1328 2109
2586构造:3295模拟:1068 2632 1573 2993 2996图:最短路径:1860 3259 1062 2253 1125
2240最小生成树:1789 2485 1258 3026拓扑排序:1094二分图的最大匹配:...
分类:
其他好文 时间:
2014-05-25 22:16:08
阅读次数:
341
运用前面几篇文章中的分词算法,可以把中文中的词语分出来,但是不同算法可能得到的分词结果不一样,到底如何确定那种分词效果最好呢。我们在这篇文章中探讨一种判断分词效果好坏的方法。
在分词的时候,有些单字是不成词的。可以搜索所有分词的可能性,然后对每一种分词结果进行统计,规则如下:每分出一个词就给分词统计结果加一,如果遇到不成词的单字就再给该分词结果加一。得到的结果分别计算出来。选出一个得分最低的就是所要分词的字符串的结果。
下面就用代码实现一下上面的思想。分别用正向最大匹配和逆向...
分类:
其他好文 时间:
2014-05-14 21:04:01
阅读次数:
256
1.稳定婚姻问题(延迟认可算法)(后续更新)2.二分图最大匹配(匈牙利算法)3.二分图最优匹配(KM)4.图的着色问题(平面图可用四色定理优化)
分类:
其他好文 时间:
2014-05-10 05:47:38
阅读次数:
226
http://acm.hdu.edu.cn/showproblem.php?pid=1507
大致题意:在一个n*m的格子上,黑色的地方不可用,问在白色格子上最多可放多少1*2的矩阵。
思路:建图,每个白色格子与它临近的上下左右的白色格子建边,求最大匹配,答案为最大匹配/2,因为是双向图。最后输出匹配边时,当找到一组匹配边记得将该边标记,以防重复计算。
#includ...
分类:
其他好文 时间:
2014-05-09 15:11:09
阅读次数:
300
http://acm.hdu.edu.cn/showproblem.php?pid=2236
找n个数使得这n个数都在不同的行和列里显然是二分图模型。难点在于求最大值与最小值差值最小。这里二分差值(看的题解),进行试探是否可以匹配成功。
#include
#include
#include
#include
#include
#include
#includ...
分类:
其他好文 时间:
2014-05-09 02:39:47
阅读次数:
356