题解:裸费用流,不过略有点坑。。。因为只要求参加的人数多,并不要求参加的小组总和多。所以我们可以不把k流量流满,又因为是最小费用最大流,所以我们连i-t容量为k-1的边即可。代码; 1 #include 2 3 #include 4 5 #include 6 7 #include...
分类:
其他好文 时间:
2015-01-21 19:49:24
阅读次数:
356
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2879分析:和bzoj1070一样,但这题的数据范围大了很多,如果直接建图就会TLE。因为对于每个厨师对应的分裂成的n个点,一定是前面的点满流后才会可能扩展后面的点。于是可以先把每个厨师的...
分类:
其他好文 时间:
2015-01-01 22:27:40
阅读次数:
197
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1070分析:把每个工人拆成N个点。记为A[i,j]表示第i个工人修倒数第j辆车。每个车跟所有N*M个工人拆出的点连边。流量为1,费用为time[i,j]*k。源和每辆车连边,N*M个点和汇...
分类:
其他好文 时间:
2015-01-01 00:10:42
阅读次数:
137
题目大意:有一个软件公司,每天需要给一些员工准备消毒毛巾,这些毛巾可以循环利用,但是需要消毒。可以将毛巾送去消毒,有两种方式,A天fA花费,B天fB花费。或者还可以直接买新毛巾,问为了满足员工的需求,至少需要花多少钱。
思路:经典的费用流问题。将每一天拆点,S向每一天
CODE:
#include
#include
#include
#include
#inc...
分类:
其他好文 时间:
2014-12-29 21:28:30
阅读次数:
127
引用题解:最大流+费用流。第一问最大流即可。第二问为“最小费用最大流”。由题意,这一问的可转化为在上一问的“残量网络”上,扩大一些边的容量,使能从新的图中的最大流为k。那么易得:对于还有剩余流量的边,走过他们的费用为0。而“增加流量”可变为:对残留网络上的每一条边建一条容量是∞费用是w的边。这表示从...
分类:
Web程序 时间:
2014-12-19 18:48:46
阅读次数:
200
我最近学习了最小费用最大流;
我还是简略谈谈最小费用最大流吧
什么是最小费用最大流?
我们可以把最小费用看做是最短路;
简单吧!!!!
也就是一条边有两个权值;
一个为边权,另一个为流值;
什么是最大流?
当我们求出了最小费用时;
实质上求出了最短路;
而此时最大流为最短路上的每一条边的流值的最小值;
此时最小费用最大流为最短路的长度*最大流;
怎么求最小费用?
很简单!...
分类:
其他好文 时间:
2014-12-09 15:45:51
阅读次数:
211
POJ 2195 & HDU 1533 Going Home(最小费用最大流)...
分类:
其他好文 时间:
2014-12-07 23:15:18
阅读次数:
327
最小费用最大流问题的二分图最小权匹配解法!(数据满足一定条件:二分图,拆点数较小)。...
分类:
其他好文 时间:
2014-12-06 19:33:17
阅读次数:
220
把所有点拆成两个,将符合条件的两个点x,y连上边,流量为1,费用为-(x+y)。做一遍最小费用最大流,最后ans div 2即可。Program bzoj2661;const INF=2000000000;var last,next,p,cost,cap,q:array[0..1000000] of...
分类:
其他好文 时间:
2014-11-30 19:55:59
阅读次数:
237
题目大意:你有N个开区间,每个区间有个重量wi,你要选择一些区间,使得满足:每个点被不超过K个区间覆盖的前提下,重量最大思路:感觉是很好想的费用流,把每个区间首尾相连,费用为该区间的重量的相反数(由于要最大,所以是求最大费用最大流),容量为1,至于不超过K的限制,只要从源点到第一个点的流量为K就行,...
分类:
其他好文 时间:
2014-11-29 17:20:06
阅读次数:
164