zoukankan      html  css  js  c++  java
  • 关于最小割建模正确性证明

    来写一下对于最小割建模正确性的理解,困扰了好几天,今天算是看懂了。
    前置知识:闭合子图,即一张图,图中边的终点也在该图中(可以选某点,但是不选它连接的边),其实就是割开一些边拿到一张闭合子图。
    首先,明确一点,最初始的情况是只有点权,边代表关系$i ightarrow j$表示选$i$必须选$j$如此云云。一般的套路就是:正权点和S相连,而负权点和T相连,容量均为点权绝对值,而原本的边照连,但是容量为INF。
    其次:正确性证明,假设我们已经将$S$、$T$割开,并且$S$肯定是一张闭合子图(不然顺着某边biubiubiu就溜到$T$了),那么我们可以得到如下的一些关系式($C$是割,$W$是我们需要的价值,$S_+$、$S_-$表示目前$S$所在图中的正(负)权点之和,$T$同理):
    $$sm = sum_{i in V, vak[i]>0} val[i]$$
    $$C = T_{+} + vert S_{-} vert$$
    $$W = S_{+} - vert S_{-} vert$$
    $$C+W = S_{+} + T_{+} = sm$$
    最后合并,发现$C+W=sm ightarrow W=sm-C=sm-maxflow$,即我们想要的价值,是总的正权点和减去我们建出来图的最小割(即最大流),于是乎就可以解释为什么是上述所说一般套路的建图方式了。
    一般来说,正权点就表示拿这个点可以得到收益,但是拿这个点必须拿一些别的点,此时必须拿的这些点会带来花费。
    模板:线性代数我就是从这题理解的

  • 相关阅读:
    Java 实现线程安全的三种方式
    tomcat启动时报EOFException错误的解决方式
    mysql优化——show processlist命令详解
    mysql数据库的锁有多少种,怎么编写加锁的sql语句
    java中的int与byte的转化
    JDK配置环境变量
    Eclipse32位官网下载地址
    js正则表达式匹配
    身份证号校验方法
    使用反射将JavaBean转为Map
  • 原文地址:https://www.cnblogs.com/FormerAutumn/p/11254415.html
Copyright © 2011-2022 走看看