[网络流24题] 太空飞行计划

本文介绍了一道关于太空飞行计划的网络流问题,并详细解释了如何通过求解最小割来找到最优解的方法。此外,还介绍了如何利用最小割划分得到原图的最大闭合子图,以此来确定选择哪些实验以获得最优结果。

[网络流24题] 太空飞行计划

 

时间限制:1 s   内存限制:128 MB

【问题描述】

E

E

E

Em

I

I

I

I

E

I

Rj

I

I

c

E

p

【编程任务】
【数据输入】
【结果输出】
【输入文件示例】shuttle.in
2 3
10 1 2
25 2 3
5 6 7
【输出文件示例】shuttle.out
1 2
1 2 3
17


对于第三行的数字如何求,我们可以这样理解。
可能并不严谨
令f1为所有实验赞助钱总和,f2为不选的实验赞助总和,f3为所选实验需要器材的价钱总和。
那么我们最终要求得就是f1-f2-f3
即f1-(f2+f3)
容易发现f2+f3事实上是原图中的一个割,那么求出最小割即可。

对于输出方案,我一直不理解,后来看了BYVoid的blog,感觉顿悟。
一句话:因为最后一次分层,s不再能到达t,所以原图已经被最小割分为了两个不连通的图,而s所在的那张图是原图的一个最大闭合子图,也就是题目所求,所以只需要知道s最后能遍历到那些点,就可以输出方案了。

转载于:https://www.cnblogs.com/hyghb/p/8145283.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值