http://acm.fzu.edu.cn/problem.php?pid=1202二分图最大匹配,问哪些边是必要的,O(n^3)的方法删边的时候把连接关系也要删掉,如果在此基础上无法找到增广路,加入答案,恢复连接关系,如果能找到,连接关系不用恢复(因为要n对匹配,这组匹配新的了剩下的要留给别的组)...
分类:
其他好文 时间:
2014-06-05 19:14:40
阅读次数:
350
这个最小覆盖但不同于 POJ
3041,只有横或者竖方向连通的点能用一块板子覆盖,非连续的,就要用多块所以用类似并查集方法,分别横向与竖向缩点,有交集的地方就连通,再走一遍最大匹配即可一开始还有点没想清楚缩点怎么写,其实就是横向和竖向分别缩一下,不要混在一起,否则很麻烦,要注意一下#include
...
分类:
其他好文 时间:
2014-06-05 16:58:21
阅读次数:
204
最大匹配数就等于最大点覆盖,因为在图里面,凡是要覆盖的点必定是连通的,而最大匹配之后,若还有点没有覆盖到,则必定有新的匹配,与最大匹配数矛盾,如果去掉一些匹配,则必定有点没有覆盖到。POJ
1469比较简单,用的经典的二分图匹配算法。#include #include #include #inclu...
分类:
其他好文 时间:
2014-06-05 16:12:09
阅读次数:
247
求无向图中能覆盖每个点的最小覆盖数
单独的点也算一条路径这个还是可以扯到最大匹配数来,原因跟上面的最大独立集一样,如果某个二分图(注意不是DAG上的)的边是最大匹配边,那说明只要取两个端点只要一条边即可。故最小覆盖数还是
顶点数-最大匹配数根据DAG建图的时候,就是DAG有边就给对应的端点建边#in...
分类:
其他好文 时间:
2014-06-05 16:10:54
阅读次数:
220
二分图bipartite
使用BFS广度优先判断一个图是否是二分图。基本图操作。
参考
http://www.geeksforgeeks.org/bipartite-graph/
#pragma once
#include
#include
#include
using namespace std;
class CheckwhetheragivengraphisBipa...
分类:
其他好文 时间:
2014-06-01 15:03:24
阅读次数:
288
DescriptionInputOutputSample Input51 1 2 2
1Sample Output1 2 4 0
3HINT30%的数据中N≤50;60%的数据中N≤500;100%的数据中N≤10000。二分图匹配,倒着匹配,每次选小的增广(随便乱yy一下,应该就可以证明是字典序最...
分类:
其他好文 时间:
2014-05-26 14:00:25
阅读次数:
262
先了解一下基本的知识:转自:http://blog.sina.com.cn/s/blog_89a06c7d0100trcg.html二分图:二分图又称二部图,是图论中的一种特殊模型。设G=(V,E)是一个无向图,如果顶点V可以分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个...
分类:
其他好文 时间:
2014-05-26 11:21:59
阅读次数:
191
初级:基本算法:枚举: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
/*******************************************************
题意:
现在有一个n*m的博物馆g,每一个g[i][j]要不是一个<=2^12
的数,要不就是-1。
如果这个点是-1,表示这个点有一个守卫
否则就是以g[i][j]为关键字规则的宝物。
具体规则是:
现在有12个被编号的点(...
分类:
其他好文 时间:
2014-05-15 20:20:26
阅读次数:
251