Codeforces 708D 上下界费用流
给你一个网络流的图 图中可能会有流量不平衡和流量>容量的情况存在
每调整一单位的流量/容量 需要一个单位的花费
问最少需要多少花费使得原图调整为正确(可行)的网络流
设当前边信息为(u,v,f,c) 即从u到v有一条流量为f,容量为c的有向边
设加的边信息为[u,v,f,c] 即加一条从u到v有一条容量为f,单位费用为c的有向边
首先如果源汇的流量不平衡的话 要加一条边[T,S,INF,0]使得源汇流量平衡
接下来分情况讨论:
①:流量f>容量c
首先ans+=f-c 因为必须调整f-c个单位的流之后 才能使该边合法
加边[u,v,INF,2] 这条边的意思为f=c时 提高f需要2的花费(需要同时提高c)
加边[v,u,f-c,0] 可用作减少流量
加边[v,u,c,1] 可用作减少流量
边[u,v,INF,2]很好理解 但边[v,u,f-c,0]和[v,u,c,1]该如何理解呢
首先我们分析调整完后该边f的流量有下列情况 1.[0,c] 2.[c,f] 3.[f,INF]
第一种情况c不需要调整 要调整的是f 因为我们预先支付了f-c费用 所以f~c阶段的花费是0 而0~c的阶段单位费用为1
第二种情况c和f同时需要调整 但是总费用是f-c 我们只需要利用[v,u,f-c,0]调整到想要的f即可
第三者情况c和f也同时需要调整 但是f不会减小 所以后面两种边就无效了
所以这三种边就可以包括f的全部情况
②:流量f<=容量c
加边[u,v,INF,2] 这条边的意思为f=c时 提高一单位f需要2的花费(需要同时提高c)
加边[u,v,c-f,1] f~c这段单位花费为1
加边[v,u,f,1] 0~f这段单位花费为1
加完费用流的边之后 对于每条(u,v,f,c) 都needflow[u]-=f needflow[v]+=f
对于每个点(包括源汇)
needflow[i]>0则加[SS,i,needflow[i],0] needflow[i]<0则加[i,TT,-needflow[i],0]
最后跑一次SS到TT的最小费用流 加上之前的ans 即为答案
转载于:https://www.cnblogs.com/Aragaki/p/9768480.html
Codeforces 708D 上下界费用流相关推荐
- 【bzoj2324】[ZJOI2011]营救皮卡丘 最短路-Floyd+有上下界费用流
原文地址:http://www.cnblogs.com/GXZlegend/p/6832504.html 题目描述 皮卡丘被火箭队用邪恶的计谋抢走了!这三个坏家伙还给小智留下了赤果果的挑衅!为了皮卡丘 ...
- 【BZOJ3876】[Ahoi2014]支线剧情 有上下界费用流
[BZOJ3876][Ahoi2014]支线剧情 Description [故事背景] 宅男JYY非常喜欢玩RPG游戏,比如仙剑,轩辕剑等等.不过JYY喜欢的并不是战斗场景,而是类似电视剧一般的充满恩 ...
- BZOJ 2055: 80人环游世界 [上下界费用流]
2055: 80人环游世界 题意:n个点带权图,选出m条路径,每个点经过val[i]次,求最小花费 建图比较简单 s拆点限制流量m 一个点拆成两个,限制流量val[i],需要用上下界 图中有边的连边, ...
- UVALive7670 Asa's Chess Problem,上下界费用流,另类解法
Asa's Chess Problem 先阐述一下带上下界的边怎么建. 带上下界的建图方法 设我要建一条边(u→v)(u\rightarrow v)(u→v),流量上界为upupup,下界为downd ...
- 【BZOJ4108】[Wf2015]Catering 有上下界费用流
[BZOJ4108][Wf2015]Catering Description 有一家装备出租公司收到了按照时间顺序排列的n个请求. 这家公司有k个搬运工.每个搬运工可以搬着一套装备按时间顺序去满足一些 ...
- [bzoj2055]80人环游世界 上下界费用流
2055: 80人环游世界 Time Limit: 10 Sec Memory Limit: 64 MB [ Submit][ Status][ Discuss] Description 想必大家 ...
- BZOJ 2055: 80人环游世界 有源汇上下界费用流
2055: 80人环游世界 Time Limit: 10 Sec Memory Limit: 64 MB Submit: 568 Solved: 347 [Submit][Status][Disc ...
- 一篇网络流 基本模型超全总结(最大流 费用流 多源汇最大流 上下界可行流) 思路+代码模板
文章目录 一.网络流与最大流 二.网络流三个基本性质 三.重要定义定理 四.最大流算法 <Ⅰ> Edmonds-Karp算法(EK算法) 1.EK算法 2.算法思想: 3.代码模板 4.模 ...
- 【bzoj3698】XWW的难题 有上下界最大流
题目描述 XWW是个影响力很大的人,他有很多的追随者.这些追随者都想要加入XWW教成为XWW的教徒.但是这并不容易,需要通过XWW的考核. XWW给你出了这么一个难题:XWW给你一个N*N的正实数矩阵 ...
最新文章
- Ubuntu 14.04使用命令行安装VirtualBox
- 基于STC8H1K28的双轴机械臂驱动模块:步进电机42HS348E,BH32角度传感器
- codeforces round 422 div2 补题 CF 822 A-F
- 浏览器设置了打开会显示特定网页为什么还是显示2345_Edge没能取代Chrome成为我的主力浏览器...
- C#将json字符串解析成对象
- Flex与.NET互操作系列文章
- 【跨Web与客户端多媒体开发】
- php7 变量,PHP7变量结构分析
- (pytorch-深度学习系列)正向传播与反向传播-学习笔记
- HDOJ_1004_Let the Balloon Rise
- 牛X | 一款比传统数据库快100-1000倍的数据库,认识一下
- python第三方库介绍和安装
- 高并发架构系列:Kafka、RocketMQ、RabbitMQ的优劣势比较
- unity3d 挂载脚本_Unity3D加载资源的四种方式
- java计算机毕业设计快滴预约平台MyBatis+系统+LW文档+源码+调试部署
- 计算机组装与维修第3版,计算机组装与维护(第3版)
- python数据容器
- 如何 gitignore .gitignore
- iOS - navigationController简单使用
- 基于Scrapy对更新后的Dmoz进行抓取(网上旧版本不靠谱)
热门文章
- java 线程的理解_Java多线程基础理解
- 用友ERP-U8执行完成流程小记
- 如何发送Excel中图表到邮件
- [HNOI2012]集合选数 BZOJ2734
- 【云周刊】第120期:麒麟来了!PUE逼近1.0,阿里展示液冷黑科技
- Redis Cluster集群知识学习总结
- 安全测试===Mysql 注入练习网站(3)
- 翻身的废鱼——论PHP从入门到放弃需要多久?13
- 封装算法: 模板方法(Template Method)模式
- 《Windows服务器配置与管理》文件系统管理