最大权闭合子图

对于最大权闭合子图的理论学习并且补充一部分网络流的笔记

  • 有向图中若干个点组成的一个集合\(V\),集合\(V\)的所有出边所连的点也都属于\(V\),这些点构成的图即为闭合子图
  • 点有点权,最大权闭合子图即为权值和最大的闭合子图

Solution

建图

  • 建立超级源点\(s,t\)
  • \(s\)向所有点权为正的点连一条容量为其权值的弧
  • 所有点权为负的点向\(t\)连一条容量为其权值绝对值的弧
  • 对于原图中的所有有向边,均在网络中连一条对应的且容量为正无穷的弧

答案

  • 正权点的点权和-最大流
  • ……为什么啊?

概念

  • 割:删除一个集合中的所有弧,\(s,t\)不连通,则该集合为一个割

  • 最小割:所有割中,容量和最小的一个

  • 简单割:割中的每条弧都与\(s\)或\(t\)直接相连

  • 最小割最大流定理:最大流 = 最小割

    • 大概口胡一下:

    • 任意一个流都小于等于任意一个割

      \(s\)到\(t\)的流量不会凭空消失,从\(s\)流出多少,就进入到\(t\)多少。所以任意一个割,所流过的流量都相等。并且由于容量限制,流量小于等于容量,所以任意一个流都会小于等于任意一个割

    • 对于任意一个割,恒大于等于任意流。则等价于任意割大于等于最大流。因为只要比最大流还大,那么一定比其他的流还大。并且可以知道,如果存在一个割可以等于最大流,那么一定就是最小割。

      存在一个割=最大流。计算最大流,在残余网络中,构造两个点集\(S,T\),\(S\)中的点与\(s\)相连通,\(T\)中的点与\(t\)相连通。并且可以知道,\(S\)与\(T\)相连的弧一定都是满流,否则可以继续增广。那么这些弧的容量=流量,它们构成的割=流量,而此时流量为最大流。

证明

  • 闭合图中最小割是简单割

    • 由于和\(s,t\)无关的弧都是\(+\infty\),我们不会去选它们作为割
    • 我们只会去割一割那些与\(s,t\)相连的弧
    • 所以闭合图中,最小割是简单割
  • 简单割对应了一个闭合子图
    • 一个简单割将网络分为\(S,T\)两个点集,\(S\)中的点与\(s\)相连通,\(T\)中的点与\(t\)相连通
    • 其中\(S\)是一个闭合子图
      • 证明:由于我们不会去割那些容量为\(+ \infty\)的弧,所以原图中的弧都完好无损。
      • 引理:若结点\(u\)属于一个闭合子图,则其出边所指向的结点\(v\)也属于闭合子图
      • 原图中的弧都在,并且\(S\)中的点不会连到\(T\),所以其所有的出边都连在了\(S\)
      • 那么这就是一个闭合子图
  • 设\(W\)表示某个简单割对应的闭合子图的权值
  • 设\(S_+\)表示\(S\)中的正权点权值之和,\(S_-\)表示\(S\)中的负权点权值之和
  • 设\(T_+\)表示\(T\)中的正权点权值之和,\(T_-\)表示\(T\)中的负权点权值之和
  • 则:\(W = S_+ + S_- = S_+ - |S_-|\)
  • 设\(C\)表示某个简单割的大小
  • 则:\(C = |S_-| + |T_+|\)
    • 这里解释一下,因为负权点与\(t\)有一条容量为其点权绝对值的弧,而它又属于\(S\),所以它与\(t\)相连的弧被割了
  • \(W + C = S_+ - |S_-| + |S_-| + T_+ = S_+ + T_+\)

  • 所以:\(W = S_+ + T_+ - C\)

  • 你会发现前两项其实就是所有正权点的点权和。我们要求出最大权闭合子图,即让\(W\)最大,也就是让\(C\)最小,则\(C\)就需要等于最小割,也等于最大流。

综上所述,最大权闭合子图 = 正权点权值和 - 最大流(最小割)

相关题目:

太空飞行计划问题

转载于:https://www.cnblogs.com/Neworld2002/p/10344525.html

[笔记] 最大权闭合子图最大流最小割相关笔记相关推荐

  1. 最大权闭合子图(最小割)

    最大权闭合子图(最大流最小割) •参考资料 [1]最大权闭合子图 •权闭合子图 存在一个图的子图,使得子图中的所有点出度指向的点依旧在这个子图内,则此子图是闭合子图. 在这个图中有8个闭合子图:∅,{ ...

  2. CF1082G Petya and Graph(最小割,最大权闭合子图)

    QWQ嘤嘤嘤 感觉是最水的一道\(G\)题了 顺便记录一下第一次在考场上做出来G qwqqq 题目大意就是说: 给你n个点,m条边,让你选出来一些边,最大化边权减点权 \(n\le 1000\) QW ...

  3. 洛谷 - P1361 - 小M的作物 - 最小割 - 最大权闭合子图

    第一次做最小割,不是很理解. https://www.luogu.org/problemnew/show/P1361 要把东西分进两类里,好像可以应用最小割的模板,其中一类A作为源点,另一类B作为汇点 ...

  4. 图论 —— 网络流 —— 最小割 —— 最大权闭合子图

    [概述] 给出一个有向图,每一个点都有一个权值,现在要选择一个权值和最大的子图,使得每个点的后继都在子图中,这个子图就称为最大权闭合子图. 如上图,能选的子图有:Ø.{1,2,3,4,5,6}.{3, ...

  5. 【BZOJ】1497: [NOI2006]最大获利 最大权闭合子图或最小割

    [题意]给定n个点,点权为pi.m条边,边权为ci.选择一个点集的收益是在[点集中的边权和]-[点集点权和],求最大获利.n<=5000,m<=50000,0<=ci,pi<= ...

  6. 最大权闭合子图(最小割模型)

    1,定义: 1,最大权闭合子图是最小割的一个模型.即每一个子图中的每一个点,其出边的点也全应该在这个子图中.而所有子图中,其点的权值和最大就是最大权闭合子图. 2,构建该图,我们把所有正权值点与源点s ...

  7. 洛谷 p4174 [noi2006] 最大获利 最小割(最大流),最大权闭合子图

    题目 题解 题目 洛谷 p4174 建站花费p[i]元,如果a,b两个站都建起来了获利c元,问最大的获利. 题解 首先需要理解最大流求最大权闭合子图,这个我也不说了,又是转载博客. https://b ...

  8. 【学习笔记】最大权闭合子图

    对于非 DAG 的图也能用最小割求解最大权闭合子图. 理解:对于一个环,如果正点权有一个没删的话,那么整个环是可达的(相邻的边的容量为 inf),这样环上所有负全点都会向汇点断边,同时为了满足最优性, ...

  9. hdu 3917 Road constructions 最大权闭合子图

    样例说明: n(城市数目)   m(工程队数目) 每个工程队上交的税收 val[i] k(k个工程) xi   yi  ci  costi , 工程队ci承包由xi到yi,政府的补贴为costi 注意 ...

最新文章

  1. Linux环境kafka安装
  2. Vue 递归实现树形结构
  3. 黑马程序员--网络编程
  4. java 英文字符串排序_英文字符串排序算法
  5. 外设驱动库开发笔记35:迪文触摸屏驱动
  6. php100 linux,PHP100精华:很靠谱linux经常使用命令
  7. oracle 数据结构部署,
  8. SpringBoot系列: 单元测试2
  9. 征集“战疫”中的影像力量 第六届中国无人机影像大赛开始报名
  10. 服务器测试文档格式,服务器测试文档格式
  11. Atitit. 解释器模式框架选型 and应用场景attilax总结 oao
  12. android dff播放器,无损音乐文件的整理(dff、dsf篇)
  13. VS2017安装打包插件
  14. 微服务之服务网关Gateway
  15. common模块的依赖问题
  16. 读书笔记-大型网站技术架构:核心原理与案例分析
  17. wps怎么关闭视图保护_wps页面视图怎么取消
  18. 后盾网经典原创视频教程php,《后盾网经典原创视频教程-PHP》139集
  19. android 二级联动列表,仿eleme点餐页面
  20. Python 小练习_battleship

热门文章

  1. Redis - 在电商购物车场景下的实战分析
  2. 各大软件的 java版本_Java 各个版本的软件 1.4 1.5 5.0 6.0
  3. c语言运行出现-1 j,c语言中,y[ j ] = -1什么意思?
  4. C++从文件中查找特定的字符串,并提取该字符串
  5. 4个mos管驱动的全桥电路原理_逆变器工作原理
  6. 360路由器v2刷第三方固件_路由器不拆闪存,编程器刷机技巧,恢复出厂固件办法...
  7. Linux添加用户并赋管理员权限
  8. PowerDesigner导出SQL脚本运行注释出现乱码问题
  9. zTree节点增删改
  10. Xftp报no matching outgoing encryption algorithm found