博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 3549 Flow Problem 基本网络流。
阅读量:5284 次
发布时间:2019-06-14

本文共 1466 字,大约阅读时间需要 4 分钟。

#include 
#include
#include
#include
using namespace std; int cap[100][100]; int a[100]; int flow[100][100]; int path[1010]; int N,M; const int inf = 0x7f7f7f7f; int f; void BFS( ) {
int i, j, k, t, u, v; f = 0; memset(flow, 0, sizeof(flow)); for (; ; ) {
memset(a, 0, sizeof(a)); memset(path, 0, sizeof(path)); deque
q; a[1] = inf; q.push_back(1); while (!q.empty( )) {
t = q.front( ); q.pop_front( ); for (i = 0; i <= N; i++) if (!a[i] && flow[t][i] < cap[t][i] ) { path[i] = t; a[i] = min(a[t], cap[t][i] - flow[t][i]); q.push_back(i); } } if (a[N] == 0) break; for (u = N; u != 1; u = path[u]) {
flow[path[u]][u] += a[N]; flow[u][path[u]] -= a[N]; } f += a[N]; } printf("%d\n",f); } int main( ) {
int T, l = 0, i, b, c, d; scanf("%d", &T); while (T--) { l++; scanf("%d%d", &N, &M); memset(cap, 0, sizeof(cap)); for (i = 0; i < M; i++) {
scanf("%d%d%d", &d, &b, &c); cap[d][b] += c; } printf("Case %d: ",l); BFS( ); } return 0; }

转载于:https://www.cnblogs.com/tangcong/archive/2011/08/08/2130554.html

你可能感兴趣的文章
Kubernetes学习之路(九)之kubernetes命令式快速创建应用
查看>>
数据库基础知识汇总
查看>>
vue 图片懒加载
查看>>
Java基础5:抽象类和接口
查看>>
SRM589
查看>>
geoserver笔记
查看>>
Java 程序检查远程服务器状态
查看>>
StringBuffer 和 StringBuilder
查看>>
java synchronized详解
查看>>
软件体系结构与设计实验一
查看>>
今天看了孚日助学金情况
查看>>
MySQL表的几个简单查询语句
查看>>
net core appsetting配置
查看>>
能与lambda组合的五个常用内置函数
查看>>
php编程 之 php基础二
查看>>
linux 常用命令总结
查看>>
新增数据盘
查看>>
javascript基础03
查看>>
UIView的layoutSubviews和drawRect方法何时调用
查看>>
研一寒假00__char_cin输入时的问题_数组&&字符串
查看>>