nyoj_323:Drainage Ditches(网络流入门)
网络流入门@_@,此处本人用的刘汝佳的Dinic模板
#include<bits/stdc++.h>
using namespace std;
const int INF = 0x3f3f3f3f;
struct Edge
{
int from,to,cap,flow;
};
int n,s,t,m;
struct Dinic
{
, M = ; //N对应点数
vector<Edge> edges;
vector<int> G[N];
bool vis[N];
int d[N];
int cur[N];
void init()
{
; i<=n; i++)
G[i].clear();
edges.clear();
}
void AddEdge(int from,int to,int cap)
{
edges.push_back((Edge)
{
});
edges.push_back((Edge)
{
to,,
});
int w=edges.size();
G[);
G[to].push_back(w-);
}
bool bfs()
{
memset(vis,,sizeof(vis));
queue<int>Q;
d[s] = ;
Q.push(s);
vis[s]=;
while (!Q.empty())
{
int x = Q.front();
Q.pop();
; i<G[x].size(); i++)
{
Edge e=edges[G[x][i]];
if (!vis[e.to]&&e.cap>e.flow)
{
vis[e.to]=;
d[e.to] = d[x] + ;
Q.push(e.to);
}
}
}
return vis[t];
}
int dfs(int x, int a)
{
) return a;
,f;
for (int&i = cur[x] ; i<G[x].size(); i++)
{
Edge& e=edges[G[x][i]];
&&(f=dfs(e.to,min(a,e.cap-e.flow)))>)
{
e.flow+=f;
edges[G[x][i]^].flow-=f; //流量增大意味着净容量减少
flow+=f; //反向边容量表示了正向边的流量
a -= f;
)break;
}
}
return flow;
}
int Maxflow(int s, int t)
{
;
while (bfs())
{
memset(cur,,sizeof(cur));
flow += dfs(s, INF);
}
// for(int i=1;i<=n;i++)
// for(int j=0;j<G[i].size();j++)
// printf("from:%d to:%d cap:%d flow:%d\n",i,edges[G[i][j]].to,edges[G[i][j]].cap,edges[G[i][j]].flow);
return flow;
}
} g;
int main()
{
while(~scanf("%d%d",&m,&n))
{
g.init();
s=;
t=n;
; i<m; i++)
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
g.AddEdge(a,b,c);
}
printf("%d\n",g.Maxflow(s,t));
}
}
nyoj_323:Drainage Ditches(网络流入门)的更多相关文章
- POJ 1273 Drainage Ditches (网络流Dinic模板)
Description Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover ...
- POJ 1273:Drainage Ditches 网络流模板题
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 63339 Accepted: 2443 ...
- HDU1532 Drainage Ditches 网络流EK算法
Drainage Ditches Problem Description Every time it rains on Farmer John's fields, a pond forms over ...
- USACO 4.2 Drainage Ditches(网络流模板题)
Drainage DitchesHal Burch Every time it rains on Farmer John's fields, a pond forms over Bessie's fa ...
- NYOJ 323 Drainage Ditches 网络流 FF 练手
Drainage Ditches 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 Every time it rains on Farmer John's fields, ...
- POJ 1273 Drainage Ditches 网络流 FF
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 74480 Accepted: 2895 ...
- Drainage Ditches~网络流模板
Description Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover ...
- poj 1273 Drainage Ditches 网络流最大流基础
Drainage Ditches Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 59176 Accepted: 2272 ...
- POJ-1273Drainage Ditches(网络流入门题,最大流)
Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover patch. This ...
随机推荐
- JavaSE教程-03Java中分支语句与四种进制转换
一.分支语句 计算机源于生活,程序模拟现实生活,从而服务生活 行为模式 1,起床,刷牙,洗脸,吃早餐,上课,回家,睡觉(顺序性) 2,如果时间不太够,打个滴滴快车,如果时间够,坐个地铁(选择性) 3, ...
- Xamarin开发笔记—WebView双项事件调用
1.Xamarin调用WebView: 原理:Xamarin.Forms WebView内置方法xx.Eval(..)可以调用到页面里面的js函数. WebView展示的代码如下: var htmlS ...
- Android上解析Json格式数据
package com.practice.json; import org.json.JSONArray; import org.json.JSONException; import org.json ...
- OpenSSL "heartbleed" 安全漏洞
在 heartbleed 的官网上有关于 CVE-2014-0160 漏洞的详细信息,这是关于 OpenSSL 的信息泄漏漏洞导致的安全问题.改 Heartbleed bug 可以让互联网的任何人读取 ...
- xshell连接ubuntu
安装了 ubuntu-14 ,为了连接 xshell ,做出的一些配置如下: 1.激活root用户 sudo passwd root 设置新密码,设置成功后会有提示 passwd:password u ...
- .net Kafka.Client多个Consumer Group对Topic消费不能完全覆盖研究总结(一)
我们知道Kafka支持Consumer Group的功能,但是最近在应用Consumer Group时发现了一个Topic 的Partition不能100%覆盖的问题. 程序部署后,发现Kafka在p ...
- SpringMVC中使用Swagger2整合
Swagger2是什么 Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件. Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 W ...
- MySQL授权命令grant的使用方法
本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...
- 【译】Reflection.Emit vs. CodeDOM
原文:http://ayende.com/blog/1606/reflection-emit-vs-codedom Both technologies allow you to generate ex ...
- linux下swoole的安装
//官方推荐的安装方式1:下载压缩包 wget https://github.com/swoole/swoole-src/archive/swoole-1.8.4-stable.zip 2:解压缩 u ...