poj1273解題報告(最大流 EK演算法)

2021-07-03 16:39:07 字數 765 閱讀 7426

題目大意:現在有m

個池塘(從1

到m開始編號

,1為源點

,m為匯點),及

n條水渠

,給出這

n條水渠所連線的池塘和所能流過的水量

,求水渠中所能流過的水的最大容量

.解題思路:最大流的經典題目,套模板即可完成,直接用的lrj的模板

#include#include#include#include#include#includeusing namespace std;

const int n=201;

const int inf=99999999;

int n,m,sum,s,t;//s,t為始點和終點

int flow[n][n],cap[n][n],a[n],p[n];

//分別為:flow[u][v]為流量、cap[u][v]為容量、a[i]表示源點s到節點i的路徑上的最小殘留量、p[i]記錄i的前驅

void edmonds_karp()

{int i,u,v;

queueq;//佇列,用bfs找增廣路

while(1)

{ memset(a,0,sizeof(a));//每找一次,初始化一次

a[s]=inf;

q.push(s);//源點入隊

while(!q.empty())

{u=q.front();

q.pop();

for(v=1;v<=m;v++)

{if(!a[v]&&flow[u][v]

POJ 1273 樸素的最大流

poj 1273 ditch mike w 2011 10 5 今天我才發現,我對殘餘網路理解有誤!include include include include ifndef true define true 1 endif define size 222 define qsize 2 size ...

poj 1273 最大流 EK演算法

最大流問題 從源點到終點運送貨物,經過一些中轉站,中轉站之間有路徑連線,每條路徑有運送貨物量的上限,求最多能運送多少貨物 找最大流就是每次找增廣路徑,並更新網路,直到找不到增廣路徑 includeusing namespace std const int max 201 const int inf ...

POJ 1273 最大流裸題。

用ek演算法水過 include include include include include include include include include includeusing namespace std include const int n 205 const int inf 2147...