zoukankan      html  css  js  c++  java
  • Random Maze HDU

    主要谈谈建图的原理给自己听

    首先贪心出来的一个图上加的边都是可走的【修改边】,这些修改边的反向边是用来在跑网络流的时候撤销修改的

    换句话说,每条修改边都是备选项,是用来调整图上各点入度的

    所以,既然是保存修改边,那么图里是不保存我们原本贪心保留的边的,那些边的信息都被压缩进最低消耗和各点的入度了

    把贪心边引发的信息称为初始流,我现在需要一个附加流,附加流叠加上初始流能让各点的入度变为0

    假设初始流中u点的入度为正x,意即u点的入度大于出度

    那么附加流中就需要让u的出度大于入度

    为了跑出这样一个并不平衡的流,我要从虚拟源节点s向u连一条容量为u入度绝对值的边

    这样在跑最大流的时候,u会往更多的点进行增广,这样也就达到了修正入度为0的目的

    这里的增广即是走修改边






  • 相关阅读:
    面试题_day0212
    面试题_day0211
    猫眼的数字解密
    缺口验证码
    mysql替换字段里面的内容
    mysql重复id删除
    追踪你的女朋友。
    淘宝登录验证
    jadx-gui-1.0.0.jar怎么运行?
    Python实现一个进度条
  • 原文地址:https://www.cnblogs.com/Drenight/p/8611306.html
Copyright © 2011-2022 走看看