二分匹配
文章平均质量分 78
ophunter
不会DP!
展开
-
hdu4619Warm up 2(二分匹配)
题目请戳这里题目大意:给一些1*2的多米诺骨牌,放到一个棋盘中,n个横着放,m个竖着放,同向的牌不会有交叉,现在要拿掉一些骨牌保证每个格子最多被一个骨牌占领,求剩下最多骨牌数量。题目分析:裸的二分匹配,经典的染色模型。对格子黑白染色,每张多米诺骨牌必占一黑一白2个格子,从白格子向黑格子建边,跑一下匈牙利即可。骨牌坐标范围0-100,所以棋盘102*102,黑白点最多5202个,边不超过原创 2013-08-26 09:49:07 · 965 阅读 · 0 评论 -
poj1325Machine Schedule(二分匹配)
题目请戳这里题目大意:2种机器A,B,A有n个工作模式0~n-1,B有m个工作模式0~m-1。一开始都工作在0模式,现在有k个工作,对于工作i可以工作在机器A的x模式或者B的y模式,机器切换模式要耗费时间,所以希望尽量少的切换模式。求机器完成k个工作最少的切换次数。题目分析:根据题意很容易建一个二分图。顶点分别为机器A和机器B的工作模式,每个工作一条边。要求的就是这张图的最小点覆盖。而二分原创 2013-08-29 15:44:45 · 943 阅读 · 0 评论 -
hdu3729I'm Telling the Truth(hungry+输出字典序)
题目请戳这里题目大意:有n个学生,每个学生给一个区间,表示自己真实的rank范围,但是其中有一些人说谎了。求最大说真话的人数并字典序最大输出说真话的同学编号。题目分析:不会证明的贪心注定是悲剧。。。原来是个裸的二分匹配。因为要输出字典序最大,hk换了各种姿势都不太对,果然是多路增广的问题么。还是没有想通。不过hungry很容易解决,因为hungry每次只找一条增广路,所以每次从x的原创 2013-10-09 09:27:22 · 1118 阅读 · 0 评论 -
SPOJ4206Fast Maximum Matching(hopcroft-karp)
题目请戳这里题目大意:裸的二分匹配。题目分析:数据比较强,用来测模版的。这题用hungry跑着会比较吃力,所以用hopcroft-karp算法。这个算法较hungry高效是因为每次bfs找到一个增广路集,然后用dfs进行多路增广,同时找多条增广路,从而效率大增。其实怎么看hk算法都是个没有边权的dinic啊。参照着wikipedia 敲了一个hk,效率貌似不高啊。。。详情请见代码:原创 2013-10-09 12:16:36 · 1094 阅读 · 0 评论