题目地址:POJ 2135
来回走一遍可以看成从源点到汇点走两遍。将每个点的流量设为1,就可以保证每条边不重复。然后跑一次费用流就行了。当流量到了2之后停止,输出此时的费用。
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;...
分类:
其他好文 时间:
2014-07-27 11:55:13
阅读次数:
195
题目地址:HDU 2686 HDU 3376
这两道题目除了数据大小外是一样的。前者只有30*30,但是后者却成了600*600。。本来以为前者代码用到后者会超时,迟迟没敢交,但是感觉能用费用流的话也只能这么做了,于是改了改数组大小就交上去了。还真没超时。。
这题又是一道关于来回最短路的。最大费用可以把费用改成相反数,最后再转成相反数就是最大费用了。
建图思路是拆点,限制每个点只...
分类:
其他好文 时间:
2014-07-27 11:42:55
阅读次数:
249
题目链接
poj3422
真是感觉网络流越来越神奇了。
1、最小费用流 -- 最大费用流之间转化
2、拆点
3、费用 OR 流量 (cost, flow)
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using n...
分类:
其他好文 时间:
2014-07-27 11:31:52
阅读次数:
328
题目地址:HDU 1565 HDU 1569
刚开始接触最小割,就已经感受到了最小割的博大精深。。。
这建图思路倒是好想。。因为好多这种关于不相邻的这种网络流都是基本都是这样建图。但是感觉毫无道理可言。。。看了题解后才明白这样做的意义。
下面是题解中的说法。
大概是这样分析的,题义是要我们求在一个方格内取出N个点,使得这N个独立的(不相邻)点集的和最大。我们可以将问题转化为最小...
分类:
其他好文 时间:
2014-07-27 11:29:32
阅读次数:
249
Description
Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover patch. This means that the clover is covered by water for awhile and takes quite a long time to r...
分类:
其他好文 时间:
2014-07-27 11:17:12
阅读次数:
255
一个无向图,问你删除多少点后,可以隔断起点到终点的所有路径?输出字典序最小的删点方案。求最小点割,先拆点,容量为1,普通边容量无穷,最大流即为应删点数。需要求出字典序最小的方案,可以从小到大枚举所有的点,如果当前枚举的点是割点,那么进行标记,同时后面的枚举也不再经过这个点。召唤代码君:#includ...
分类:
其他好文 时间:
2014-07-27 10:32:12
阅读次数:
207
一个单源多汇的有向图,求增大那些边的容量可以使得网络的最大流增加。很简单,直接跑最大流,保留残余网络,然后枚举所有余量为0的边,使其容量增加一个1,看看是否出现新的增广路即可。召唤代码君:#include #include #include #include #define maxn 555#def...
分类:
其他好文 时间:
2014-07-27 10:29:02
阅读次数:
173
单源点汇点无向图,要阻隔某个点的流量,必须在一个点上消耗一定的价值,问你能否在消耗价值不超过k的前提下,阻隔源点到汇点的流量。直接对于有权值的点拆点,拆后边容量即为点权。其余的点的容量无穷,最大流即可。召唤代码君:#include #include #include #define maxn 555...
分类:
其他好文 时间:
2014-07-27 10:28:42
阅读次数:
212
很久之前就想攻克一下网络流的问题了,一直拖着,一是觉得这部分的内容好像非常高级,二是还有很多其他算法也需要学习,三是觉得先补补相关算法会好点
不过其实这虽然是图论比较高级的内容,但是基础打好了,那么还是不会太难的,而且它的相关算法并不多,熟悉图论之后就可以学习了,就算法不会二分图也可以学习。
这里使用Ford-Fulkerson算法,其实现的方法叫做:Edmonds-Karp
Algori...
分类:
其他好文 时间:
2014-07-26 17:22:32
阅读次数:
413
C. 方格取数(1)Time Limit: 5000msMemory Limit: 32768KB64-bit integer IO format:%I64d Java class name:Main给你一个n*n的格子的棋盘,每个格子里面有一个非负数。从中取出若干个数,使得任意的两个数所在的格子没...
分类:
其他好文 时间:
2014-07-26 16:57:11
阅读次数:
361