因为坑了无数次队友 要开始学习网络流了,先从基础的开始,嗯~

这道题是最大流的模板题,用来测试模板好啦~

Edmonds_Karp模板 with 前向星

时间复杂度o(V*E^2)

 #include<cstdio>
#include<cstring>
#include<cmath>
#include<iostream>
#include<queue>
#define eps 0.000001
#define MAXN 20
#define MAXM 2005
#define INF (1<<30)
using namespace std;
int i,j,k,n,m,x,y,T,head[MAXN],num,w,pre[MAXN],lin[MAXN];
struct edgenode
{
int to,next,w;
} map[MAXM]; void add_edge(int id,int x,int y,int w)
{
map[id].to=y;
map[id].w=w;
map[id].next=head[x];
head[x]=id;
} bool bfs(int s,int t)
{
int u,v;
queue <int> q;
memset(pre,-,sizeof(pre));
pre[s]=s;
q.push(s);
while(!q.empty())
{
u=q.front();
q.pop();
for(int i=head[u];i!=-;i=map[i].next)
{
v=map[i].to;
if(pre[v]==-&&map[i].w>)
{
pre[v]=u;
lin[v]=i;
if (v==t) return true;
q.push(v);
}
}
}
return false;
} int Edmonds_Karp(int s,int t)
{
int flow=,d,i;
while(bfs(s,t))
{
d=INF;
for(i=t;i!=s;i=pre[i])
d=min(d,map[lin[i]].w);
for(i=t;i!=s;i=pre[i])
{
map[lin[i]].w-=d;
map[lin[i]^].w+=d;
}
flow+=d;
}
return flow;
} void init()
{
memset(head,-,sizeof(head));
scanf("%d%d",&n,&m);
num=;
for (i=;i<m;i++)
{
scanf("%d%d%d",&x,&y,&w);
add_edge(i*,x,y,w);
add_edge(i*+,y,x,);
}
} int main()
{
scanf("%d",&T);
for (int cas=;cas<=T;cas++)
{
init();
printf("Case %d: %d\n",cas,Edmonds_Karp(,n));
}
}

最大流的优化还有dinic和isap

dinic传送:dinic

【网络流#1】hdu 3549 - 最大流模板题的更多相关文章

  1. HDU 1532 最大流模板题

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1532 最近在学网络流,学的还不好,先不写理解了,先放模板... 我觉得写得不错的博客:http://blo ...

  2. 【网络流#2】hdu 1533 - 最小费用最大流模板题

    最小费用最大流,即MCMF(Minimum Cost Maximum Flow)问题 嗯~第一次写费用流题... 这道就是费用流的模板题,找不到更裸的题了 建图:每个m(Man)作为源点,每个H(Ho ...

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

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

  4. HDU-3549 最大流模板题

    1.HDU-3549   Flow Problem 2.链接:http://acm.hdu.edu.cn/showproblem.php?pid=3549 3.总结:模板题,参考了 http://ww ...

  5. POJ 1273 - Drainage Ditches - [最大流模板题] - [EK算法模板][Dinic算法模板 - 邻接表型]

    题目链接:http://poj.org/problem?id=1273 Time Limit: 1000MS Memory Limit: 10000K Description Every time i ...

  6. HDU-3549Flow Problem 最大流模板题

    传送门 这里是Ford-Fulkerson写的最大流模板 #include <iostream> #include <cstdio> #include <algorith ...

  7. HDU 2222 AC自动机模板题

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=2222 AC自动机模板题 我现在对AC自动机的理解还一般,就贴一下我参考学习的两篇博客的链接: http: ...

  8. HDU 1251 Trie树模板题

    1.HDU 1251 统计难题  Trie树模板题,或者map 2.总结:用C++过了,G++就爆内存.. 题意:查找给定前缀的单词数量. #include<iostream> #incl ...

  9. HDU 3065 (AC自动机模板题)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3065 题目大意:多个模式串,范围是大写字母.匹配串的字符范围是(0~127).问匹配串中含有哪几种模 ...

随机推荐

  1. ActiveReports 交互式报表之向下钻取解决方案

    在 ActiveReports 中可以动态的显示或者隐藏某区域的数据,通过该功能用户可以根据需要显示或者隐藏所关心的数据,结合数据排序.过滤等功能可以让用户更方便地分析报表数据. 本文中展示的是销售数 ...

  2. linux dd命令测试U盘读写速度

    1. dd命令简述: if=输入文件, of=输出文件, ibs=一次读取字节数, obs=一次写入字节数, bs=设置一次读取写入的字节数, skip=跳过的bs数, count=拷贝的块数 2. ...

  3. ftp文件操作

    PHP FTP操作类( 上传.拷贝.移动.删除文件/创建目录 ) 2016-06-01 PHP编程 /** * 作用:FTP操作类( 拷贝.移动.删除文件/创建目录 ) */ class class_ ...

  4. Yii2的相关学习记录,初始化Yii2(二)

    前面已经将Yii2下载下来了,那我们就需要能实际的使用. 一.初始化,因为我都是在windows系统下,所以用cmd命令打开下载下来的Yii2的根目录.然后运行下面命令: init 会提示选择0为开发 ...

  5. Llinux-apache安装

    第四章  构建LAMP网站服务平台 实验报告 1.安装apache服务器软件及相关组件 查看系统中是否安装apache服务相关的软件包: [root@www /]# rpm -qa | grep ht ...

  6. jquery 事件绑定(1)

    $(function(){ $("#panel h5.head").bind("click",function(){ $(this).next().show() ...

  7. overload and overwrite in C++

    1. overload : don't using it in different scope. it will hidden the one in base or global scope. 2. ...

  8. 实验一:C语言实现DES加解密算法

    计算程序执行10万次需要的时间: 总共需要175秒 加解密一次的时间小于:0.00175秒 纯计算加解密的时间会更短 去除IO操作后的时间 也就是说加解密一次的时间为0.07毫秒 /*-------- ...

  9. springboot工程读取配置文件application.yml的写法

    现在流行springboot框架的项目,里面的默认配置文件为application.yml,我们怎样读取这个配置文件呢? 先贴上我得配置文件吧 目录结构 里面内容 1 写读取配置文件的工具类 @Con ...

  10. out.print和out.write方法

    <%@ page language="java" import="java.util.*" %> <%@ page pageEncoding= ...