noi 2006 最大收益 最大权闭合图转最小割转最大流
2015-07-24 17:37
267 查看
题意:一个公司有n个可以建造通讯战的地方,建造成本分别为pi,然后第i个公司会选择使用通讯站ai与bi,使用费用是ci,然后问这个通讯公司怎么建站能够获利最大。(净获利=总收益-总成本);
网上看到一篇题解,直接说这是个最小割,求最小割然后总收益-最小割就是了。这种题解就是一点用也没有,为什么是最小割,总得解释解释吧,撂下结论就跑了,这种题解写来何用。
之后查了一篇国家集训队的论文《最小割模型在信息学竞赛中的应用》才明白原来是最大权闭合图转的最小割,至于为什么能转成最小割,自己去看论文的证明吧。
论文中已经指出所谓闭合图就是闭合图中的点的后继也在这个闭合图中。而闭合图是反映事物间必要条件的关系的,也就是说一个点是它后继的必要条件(不知道必要条件的自己百度),也就是说要有这个点,它的后继点也要都存在。然后回到该题,如果一个公司想要用通讯站的话,那么就要先建站ai与bi,那么这就是一个必要条件,也就是说该公司就可以跟站ai和bi分别连两条有向边,然后该公司这个点的权是ci,两个站的点的权职是-pi,很显然,求最大权闭合图就是我们要找的最大净收益。
然后最大权=正的点权和-最小割。这个最小割的求法是,建立一个源点s,s与正权点连边,边权是该点的权值,建立一个汇点t,t与负权点连边,边权是该点权值绝对值,其他边都是无穷大(取个inf就行了),然后套模板dinic,sap都行,求个最小割就好了。还是那句话,为什么这样转换去看论文,我只搬运做法。
其实就是个模板题,代码就不写了。
网上看到一篇题解,直接说这是个最小割,求最小割然后总收益-最小割就是了。这种题解就是一点用也没有,为什么是最小割,总得解释解释吧,撂下结论就跑了,这种题解写来何用。
之后查了一篇国家集训队的论文《最小割模型在信息学竞赛中的应用》才明白原来是最大权闭合图转的最小割,至于为什么能转成最小割,自己去看论文的证明吧。
论文中已经指出所谓闭合图就是闭合图中的点的后继也在这个闭合图中。而闭合图是反映事物间必要条件的关系的,也就是说一个点是它后继的必要条件(不知道必要条件的自己百度),也就是说要有这个点,它的后继点也要都存在。然后回到该题,如果一个公司想要用通讯站的话,那么就要先建站ai与bi,那么这就是一个必要条件,也就是说该公司就可以跟站ai和bi分别连两条有向边,然后该公司这个点的权是ci,两个站的点的权职是-pi,很显然,求最大权闭合图就是我们要找的最大净收益。
然后最大权=正的点权和-最小割。这个最小割的求法是,建立一个源点s,s与正权点连边,边权是该点的权值,建立一个汇点t,t与负权点连边,边权是该点权值绝对值,其他边都是无穷大(取个inf就行了),然后套模板dinic,sap都行,求个最小割就好了。还是那句话,为什么这样转换去看论文,我只搬运做法。
其实就是个模板题,代码就不写了。
相关文章推荐
- centos安装第三方软件库,flash与视频播放器
- 第12章 图形用户界面基础
- 【从零开始学NGUI 】 (八)ScrollView
- 五毛的cocos2d-x学习笔记02-基本项目源码分析
- 初识ASP.NET AJAX
- winxp 升级远程连接方法
- Linux patch命令参数及用法详解---Linux打补丁命令
- Online JUdge System For SzNOI 题库 语法百题 c++ d029
- iOS 密码中有特殊的字符IOS如何处理 IOS中URL包含中文参数的问题
- Android应用安全学习笔记前言
- 暑假集训——贪心专题——A题
- 两种排序方法的效率比较
- iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
- 模板方法模式学习
- ListView的position的保持
- 第11章 继承和多态
- 黑马程序员----- c语言 数组学习
- newlisp 使用gnuplot绘图
- Flash builder 4.6 下载 破解 序列号【你懂的】
- 【生活】这么近,那么远