方法1:两遍最大流。一遍最大流后,把满流边容量+1,非满流边改为INF;再求最小割即为答案。我大概想了下证明:能构成最小割的边在第一次跑最大流时都满流,然后按那样改变边容量再求一次最小割,就相当于再在那些 满流可能是属于最小割的边 中挑出最少的边形成ST割。 1 #include 2 #incl.....
分类:
其他好文 时间:
2015-10-11 11:29:09
阅读次数:
297
DescriptionGiven an undirected graph, in which two vertices can be connected by multiple edges, what is the size of the minimum cut of the graph? i.e....
分类:
其他好文 时间:
2015-10-08 10:20:24
阅读次数:
224
无向图最小割,Stoer Wanger算法。先找了个模板,日后再学习吧...#include#include#include#includeusing namespace std;#define MAXN 555#define inf 11){ int k=0,pre=0;//pre用...
分类:
其他好文 时间:
2015-10-07 11:59:52
阅读次数:
216
Cops and ThievesTime Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmit Status Practice URAL 1277Appo...
分类:
其他好文 时间:
2015-10-06 15:19:23
阅读次数:
199
看了题解,自己大概想了下。最小割唯一的充分必要条件是残量网络中所有点要嘛能从源点floodfill到要嘛能floodfill到汇点。必要性,这是当然的,因为假设从源点floodfill或者从汇点反着floodfill得到的集合若不相补,那这就有两个最小割的方案,最小割不唯一。充分性,首先这样就找到一...
分类:
其他好文 时间:
2015-10-04 20:56:18
阅读次数:
265
把入侵者看作边,每一行每一列都是点,选取某一行某一列都有费用,这样问题就是选总权最小的点集覆盖所有边,就是最小点权覆盖。此外,题目的总花费是所有费用的乘积,这时有个技巧,就是取对数,把乘法变为加法运算,最后再还原。另外还可以从最小割的思路去这么理解:每一行与源点相连,容量为该行的花费;每一列与汇点相...
分类:
其他好文 时间:
2015-10-03 10:42:38
阅读次数:
202
把某点与某几点分开的最小花费,当然想到最小割。具体怎么建图,可以画个简单的情况,然后就清楚了:0到1不受控制,建立0->1容量为INF的边;1到0受在0一边的一个控制面板的控制,建立1->0容量为1的边。 1 #include 2 #include 3 #include 4 #include...
分类:
其他好文 时间:
2015-10-02 18:42:39
阅读次数:
203
形象生动的最小割。。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define INF (1 que; 31 que.push(vt); 32 while(!que.empty...
分类:
其他好文 时间:
2015-10-02 17:13:32
阅读次数:
190
---------------------------------------------------------------------#includeusing namespace std;typedef long long ll;const int maxn = 3009;const int ...
分类:
其他好文 时间:
2015-09-25 15:51:41
阅读次数:
217
Hold Your HandTime Limit: 1500/1000 MS (Java/Others)Memory Limit: 65535/102400 K (Java/Others)Total Submission(s): 169Accepted Submission(s): 38Proble...
分类:
其他好文 时间:
2015-09-25 07:08:26
阅读次数:
261