将田地上的食物取负,求图的最小费用流即为最大费用流的相反数。(ps第一次听说还可以这样用思路:用spfa求最短路,沿着最短路增广。 ...
分类:
其他好文 时间:
2017-03-12 11:14:26
阅读次数:
214
题目描述 Alice和Bob在图论课程上学习了最大流和最小费用最大流的相关知识。 最大流问题:给定一张有向图表示运输网络,一个源点S和一个汇点T,每条边都有最大流量。 一个合法的网络流方案必须满足: (1)每条边的实际流量都不超过其最大流量且非负; (2)除了源点S和汇点T之外,对于其余所有点,都满 ...
分类:
其他好文 时间:
2017-03-08 10:40:44
阅读次数:
240
题意:一个餐厅在相继的 N 天里,每天需用的餐巾数不尽相同。 假设第 i 天需要 ri块餐巾(i=1,2,…,N)。餐厅可以购买新的餐巾,每块餐巾的费用为 p 分; 或者把旧餐巾送到快洗部,洗一块需 m 天,其费用为 f 分; 或者送到慢洗部,洗一块需 n 天(n>m),其费用为 s<f 分。每天结 ...
分类:
其他好文 时间:
2017-03-06 13:56:41
阅读次数:
143
题意:给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。 求: 1、 在不扩容的情况下,1到N的最大流; 2、 将1到N的最大流增加K所需的最小扩容费用。 30%的数据中,N<=100 100%的数据中,N<=1000,M<=5000,K<=10 思路:R ...
分类:
Web程序 时间:
2017-03-05 18:10:29
阅读次数:
235
如果能想到费用流,这道题就是显然了。 要求所有人的等待平均时间最小,也就是所有人的总等待时间最小。 每辆车只需要修一次,所以s连每辆车容量为1,费用为0的边。 现在需要把每个人拆成n个点,把车和每个人的第k个点连一条容量为1,费用为cost[i][j]*k的边。 最后把每个人拆完后的点向汇点连一条容 ...
分类:
其他好文 时间:
2017-03-05 00:25:52
阅读次数:
180
猜测 Description Input Output Sample Input 3 1 1 1 2 2 1 Sample Output 3 explain: (1,1),(1,1),(2,2)不是一个合法猜测(有相同的格子),因此不管怎么猜总是能全部猜中。 HINT Main idea 给定了若干 ...
分类:
其他好文 时间:
2017-03-04 17:31:19
阅读次数:
182
题意:给定一张图,求:1、最大流 2、最大流方案中,流量最大的一条边 题解: 第一问裸题 第二问显然Bob要把所有的费用加在流量最大的边上,因此我们二分最长边,每条边的流量改为min{二分出的最大流量,当前边的流量},跑最大流检验。 注意可以是实数流量,比如说: <1,2,3> <3,2,3> <2 ...
分类:
其他好文 时间:
2017-03-01 00:16:07
阅读次数:
195
题意:给定一张无向图,有K个人,每一时刻K个人可以同时走(也可以停在一个节点),在到达i之前必须先到达i-1,求从0到N,K个人走的最小距离和(只需一个人到达即可) 题解: 用Floyd跑出任意两个城市i j间的最短路,更新的前提是k<j(要到达城市j必须先到达1->j-1) 将每个城市拆成两个点A ...
分类:
其他好文 时间:
2017-03-01 00:11:01
阅读次数:
222
题意:有n类产品,其中第i类产品共需要Ci件。有m名员工,员工能够制造的产品种类有所区,一件产品必须完整地由一名员工制造,对于员工i,他的愤怒值与产品数量之间的函数是一个Si+1段的分段函数。当他制造第1~Ti,1件产品时,每件产品会使他的愤怒值增加Wi,1,当他制造第Ti,1+1~Ti,2件产品时 ...
分类:
其他好文 时间:
2017-03-01 00:08:17
阅读次数:
223
题意:给定一张有向图,求1到N:1、最多有多少条不相交的路径 2、在第一问的基础上,求所有路径的最小距离和 题解:拆点之后费用流裸题 #include <queue> #include <cstdio> #include <cstring> #include <cstdlib> #include < ...
分类:
其他好文 时间:
2017-03-01 00:05:28
阅读次数:
275