zoukankan      html  css  js  c++  java
  • hdu 3657 最小割(牛逼!!!!)总算理解了

    <strong></strong>
    转载:http://blog.csdn.net/me4546/article/details/6662959
    加颜色的太棒了!!!
    在网上看到的一句话恍然大悟啊,建立一个最小割模型之后,假设x点与源点是连着的,说明你是把x点给取到手了,不连,说明你是把x点去除之前一直不太明白边的容量是怎么来确定的,现在知道了,方格取数是相邻两个不能取,假设x,y是相邻的两点,他们直接建无穷大的边的原因就是:假设你最后把x,y都取来了,那么x和y的这条边就是一条割边,最小割是一定要把这条割边去掉的,去掉的代价就是该边的权值,试想如果这条边是无穷大的,程序会来割这条边吗?显然不会!所以这样就保证了x,y是不会同时被取到的。而这题相邻的可以取,只不过要额外的代价,还是假设x,y都取来了,那么这时候x,y边就是割边,程序会把它割掉,所以该边容量不是无穷大,而是相应的代价,至于后面的一定要取的几个点,只需要把他们和源点或汇点的容量设为无穷大,这样程序一定不会去割这条边,最后的结果就是这些点都留下来了,也就是都取了!
  • 相关阅读:
    赋值运算符重载
    拷贝构造函数
    sizeof与strlen
    C++函数参数为引用或指针
    Largest Rectangle in Histogram
    二极管作用
    yzoj P1948 取数字问题
    NOIP 2016 愤怒的小鸟 题解
    NOIP 2016 蚯蚓 题解
    NOIP 2016 组合数问题 题解
  • 原文地址:https://www.cnblogs.com/thefirstfeeling/p/4410567.html
Copyright © 2011-2022 走看看