UVA 1486 - Transportation
题目链接
题意:一个有向图上运输k货物,有一些边,每个边一个系数a,经过该边如果有x货物,就要缴纳a
x x的钱,问运输从1到n最小的代价
思路:费用流,这题边的容量c最大只有5,所以可以拆边,一条边拆成c条边,每条容量1,对应相应的代价为a * (i^2 - (i - 1)^2),然后跑一下费用流即可
代码:
...
分类:
其他好文 时间:
2014-09-25 16:41:49
阅读次数:
244
网上说这道题的题解是费用流我粗粗看了一下数据范围,觉得出题者似乎是让我们用 “大(d)屁(p)” 的样子,为了尊重出题人,我还是谢谢吧喵~首先,一条回路可以看做是两条路齐头并进,这是 大屁 和 费永柳 的共同思想故我们可用一条条次对角线(即 x+y=k 的对角线)来划分状态考虑枚举对角线上两个点 x...
分类:
其他好文 时间:
2014-09-21 22:02:01
阅读次数:
212
虽然题目求的是最大费用,但是我们可以通过转换就变为最小费用。用一个比最大值更的数与每个数的差作为费用值。最后处理回来就i可以了。有些人用直接每个值都乘以-1,这样更简单。 做这题,我对为什么不拆点就会错这个问题想了很久,也问了一些人。最后得出了一些知识。 在《挑战程序设计竞赛》的214页有讲...
分类:
其他好文 时间:
2014-09-18 01:57:53
阅读次数:
241
题目地址:HDU 3395
刷了几道白书和CF上的非算法题,感觉智商越来越接近负数了。。。还是先刷几道简单题缓缓。。
这题很简单,二分图模型,用费用流也可以,用KM也可以。不过需要注意的是这里是最大费用流,并不是最大费用最大流,区别在于是否是最大流,这题可以不是最大流,所以要当费用开始减少的时候停止继续流,来保证费用是最大的。
代码如下:
#include
#include
#incl...
分类:
其他好文 时间:
2014-09-12 19:16:54
阅读次数:
265
题意:
有m个警察,派n个警察到n个银行,给出每个警察到各银行的时间,求最小的平均时间。
分析:
平均乘上n就是总时间,也就是要最小化总时间,那么用费用流就可以解决问题。各银行向每个警察连边,容量1,费用为时间;增加源点,源点向各银行连边,容量1,费用0;增加汇点,警察向汇点连边,容量1,费用0。在图中跑费用流就行。
这题最恶心的地方在于保留小数,结果加上eps再输出。这里涉及到保留小数方法,是用传统的四舍五入还是用银行家舍入?都不知道以后涉及到小数的输出要怎么搞了,这种东西就该spj啊。...
分类:
其他好文 时间:
2014-09-05 23:50:12
阅读次数:
282
题目链接:
题意:
给定n个人 m个逃生洞穴 至少k个人进入逃生洞穴 挖洞时间c
下面n*m的矩阵表示每个人到每个洞需要的时间。
一个洞穴开始只能容纳一个人,可以被拓展一次,即变成可以容纳2个人(一个洞穴只能被拓展一次)
当a进入洞穴后不会开始拓展,直到有一个人b在洞穴门口等,a才会开始拓展空间,拓展的时间的c,c时间后b才能进入洞穴。
问至少k个人进入洞穴的最短时间。(数据保...
分类:
其他好文 时间:
2014-09-05 11:24:41
阅读次数:
148
题目地址:HDU 4971
比赛的时候还不会最大权闭合,当时还跟队友讨论了好长时间费用流和DP。。现在看来就是一最大权闭合水题。。。
建图思路:源点连工程,权值为利润,汇点连科技项目,权值为花费,然后对有依赖性的连有向边。用正权值和减去最小割就是答案。
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-09-03 11:17:06
阅读次数:
246
机器,任务 ,每个任务有有时间,不可中断。
题意:m个机器,n个糖果要加工,给出每个糖果的工作时间(s,t),以及糖果之间、机器预备时间以及费用,求最小费用。
这题开始受原来可以时间中断那题影响,开始用时间建图,巨麻烦,后来学习了,才觉悟时间只是计算费用的,没有帮毛钱关系, s-->机器-》糖果-》t;
因为要每个糖果都加工一次,糖果拆点,必经过(-inf)。有一个没过,则无解。
网上的添...
分类:
其他好文 时间:
2014-09-01 17:41:03
阅读次数:
178
http://tyvj.cn/Problem_Show.aspx?id=1982一眼题。。源向每个人连容量为1,费用为0的边。每个人向一个中转节点na连容量1,费用0的边(你也可以不连,直接连后边的)中转节点na想所有a物品连容量1,费用0的边所有a物品向所有b物品连容量1,费用为(m-n)^2的边...
分类:
其他好文 时间:
2014-08-26 13:17:56
阅读次数:
232
我又思考人生了T_T,nd的数组开小了,一直wa,调了一个小时才发现啊!!!!!我一直以为我的isap错了T_T,可是完全没错啊!!!!这题其实第一个问很简单,跑一次最大流即可。第二个问就是在跑完最大流的残量网络上每条边都扩充容量为oo,费用为边的费用,然后设个超级源连一条容量为k的边到点1,再跑一...
分类:
Web程序 时间:
2014-08-25 13:20:44
阅读次数:
234