题意:1是源点,m是汇点,求出来最大流量,没什么好说的就是练习最大流的模板题

**************************************************************

先用Edmonds-Karp的算法做一下试试吧
重边贡献了 1W,要加上所有的重边才算是两点间最大流量

***********************************************************************************************************************

;
;

; i<=M; i++)
        {
            ;

; i<=N; i++)
        {
            scanf(, M));
    }

;
}

邻接表实现

***********************************************************************************************************************

;
;

];
, ;
}
, ; i=e[i].next)
        {
            ;

)
        {
            MinFlow = min(MinFlow, e[v].Flow);
            v = pre[e[v].u];)
        {
            e[v].Flow -= MinFlow;
            e[v^].Flow += MinFlow;
            v = pre[e[v].u];
        }
    }

; i<=N; i++)
        {
            scanf();, M));
    }

;
}

code

Dinic实现 

************************************************************************************************************************

#include<stdio.h>
#include<;
;

};queue<, ;

; i=edge[i].next)
        {
            ;
                Q.push(v);
            }
        }
    }

;; i=edge[i].next)
    {
         == layer[u] && flow)
        {
            flow = min(MaxFlow-uFlow, flow);
            flow = dfs(v, flow);

edge[i].flow -= flow;
            edge[i^].flow += flow;
            uFlow += flow;
            ;

, End = M, cnt = ;
        memset(Head, -, ; i<=N; i++)
        {
            scanf();
        }

printf(;
}

SAP实现

*************************************************************************************************************************

#include<stdio.h>
#include<;
;

, , , gap[] = ;

; j=edge[j].next)
        {
            )
            {
                Layer[v] = Layer[u] + ;
                gap[Layer[v]]++;
                Q.push(v);
            }
        }
    }
}

, u = start, MaxFlow=;

BFS();

memcpy(cur, Head, ; j<top; j++)
            {
                ; j<top; j++)
            {].flow += MinFlow;
            }

MaxFlow += MinFlow;
            top = location;] == )
            ; j=edge[j].next)
        { && edge[j].flow)
                )
        {; j=edge[j].next)
            {;;
            gap[Layer[u]] += ;

, End = M, cnt = ;
        memset(Head, -, ; i<=N; i++)
        {
            scanf();
        }

printf(;
}

Drainage Ditches - poj 1273(网络流模板)的更多相关文章

  1. (网络流 模板 Edmonds-Karp)Drainage Ditches --POJ --1273

    链接: http://poj.org/problem?id=1273 Drainage Ditches Time Limit: 1000MS   Memory Limit: 10000K Total ...

  2. (网络流 模板 Dinic) Drainage Ditches --POJ --1273

    链接: http://poj.org/problem?id=1273 代码: //Dinic #include<stdio.h> #include<string.h> #inc ...

  3. Power Network POJ - 1459 [网络流模板]

    http://poj.org/problem?id=1459 嗯,网络流模板...多源点多汇点的图,超级汇点连发电厂,用户连接超级汇点 Status Accepted Time 391ms Memor ...

  4. hdu 1532 Drainage Ditches(最大流模板题)

    Drainage Ditches Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  5. hdoj 1532 Drainage Ditches【最大流模板题】

    Drainage Ditches Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  6. POJ 1273 Drainage Ditches(最大流Dinic 模板)

    #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int n, ...

  7. POJ 1273 网络流(最大流)模板

    http://poj.org/problem?id=1273 这道题很值得反思,弄了一下午,交上去先是一直编译错误,而在本地运行没有问题, 原因可能是oj的编译器版本老旧不支持这样的写法 G[from ...

  8. Drainage Ditches(POJ1273+网络流+Dinic+EK)

    题目链接:poj.org/problem?id=1273 题目: 题意:求最大流. 思路:测板子题,分别用Dinic和EK实现(我的板子跑得时间均为0ms). Dinic代码实现如下: #includ ...

  9. poj1273 Drainage Ditches (最大流模板)

    http://poj.org/problem?id=1273 Dinic算法 这是一道最大流的经典题 最大流尽量应该用边表,优于邻接矩阵(所以我写了邻接矩阵版的之后又写了个边表) 用了新学的Dinic ...

随机推荐

  1. bitbucket/github同一站点上多个git代码仓库的ssh-key配置

    由于项目开发需要,可能多个项目都放在bitbucket或者github上面,每个项目都有独立的sshkey,这就会造成push时的系统默认取~/.ssh/id_rsa的问题. 最简单的解决方法是这样: ...

  2. 剪切板 复制文本 ClipboardManager

    代码 public class MainActivity extends ListActivity {     private EditText tv_info;     private Clipbo ...

  3. jquery获取元素到屏幕底的可视距离

    jquery获取元素到屏幕底的可视距离 要打对号的图里的height(我自称为可视高度:滚动条未滑到最底端)  不是打叉图里的到页面底部(滚动条到最底部时的height)(offset().top方法 ...

  4. rest-简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  5. firebug中console命令尝试

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. HTML5 File 对象

    实例说明1: <div class="container"> <input type="file" id="file" m ...

  7. Oracle处理特殊字符

    检查数据库级的参数设置 select * from nls_database_parameters;

  8. 使用<span>标签为文字设置单独样式

    这一小节讲解<span>标签,我们对<em>.<strong>.<span>这三个标签进行一下总结: 1. <em>和<strong& ...

  9. Asp.net MVC 与 Asp.net Web API 区别

    Asp.Net Web API VS Asp.Net MVC 1.Asp.net MVC 是用来创建返回视图(Views)与数据的Web应用,而Asp.net Web API是一种简单轻松地成熟的HT ...

  10. Java多线程中易混淆的概念

    概述 最近在看<ThinKing In Java>,看到多线程章节时觉得有一些概念比较容易混淆有必要总结一下,虽然都不是新的东西,不过还是蛮重要,很基本的,在开发或阅读源码中经常会遇到,在 ...