網路流( 最大流 草地排水模板題)

2022-04-10 17:33:11 字數 1299 閱讀 7041

usaco

時間限制: 2 s

空間限制: 256000 kb

題目等級 : 鑽石 diamond

題解農夫約翰知道每一條排水溝每分鐘可以流過的水量,和排水系統的準確布局(起點為水潭而終點為小溪的一張網)。需要注意的是,有些時候從一處到另一處不只有一條排水溝。

根據這些資訊,計算從水潭排水到小溪的最大流量。對於給出的每條排水溝,雨水只能沿著乙個方向流動,注意可能會出現雨水環形流動的情形。

輸入描述 input description

第1行: 兩個用空格分開的整數n (0 <= n <= 200) 和 m (2 <= m <= 200)。n是農夫john已經挖好的排水溝的數量,m是排水溝交叉點的數量。交點1是水潭,交點m是小溪。

第二行到第n+1行: 每行有三個整數,si, ei, 和 ci。si 和 ei (1 <= si, ei <= m) 指明排水溝兩端的交點,雨水從si 流向ei。ci (0 <= ci <= 10,000,000)是這條排水溝的最大容量。

輸出描述 output description

輸出乙個整數,即排水的最大流量。

樣例輸入 sample input

5 4

1 2 40

1 4 20

2 4 20

2 3 30

3 4 10

樣例輸出 sample output

50資料範圍及提示 data size & hint

#include#include

#include

#include

#define maxn 300

#define inf 9999999

using

namespace

std;

intn,m,map[maxn][maxn],a,b,f,maxflow,pre[maxn];

void flow(int start,int

end)

}if(pre[end]==0) break

;

for(int i=end;i!=start;i=pre[i])

minflow=min(minflow,map[pre[i]][i]);

for(int i=end;i!=start;i=pre[i])

maxflow+=minflow;

}}int

main()

maxflow;

//最大流

flow(1

,m);

cout

<}

codevs1993 草地排水(最大流)

usaco 時間限制 2 s 空間限制 256000 kb 題目等級 鑽石 diamond 農夫約翰知道每一條排水溝每分鐘可以流過的水量,和排水系統的準確布局 起點為水潭而終點為小溪的一張網 需要注意的是,有些時候從一處到另一處不只有一條排水溝。根據這些資訊,計算從水潭排水到小溪的最大流量。對於給出...

codevs1993 草地排水(最大流)

最近學了最大流,於是去codevs找了幾道最大流裸題 這是我第一次寫網路流 題目大意 求乙個圖的最大流 就是這樣的裸題 第一次a網路流的題,發個部落格紀念一下。var n,m,i,j,k,h,t,x,y,z,ans longint a array 0.410,0.410 of longint q,l...

codevs 草地排水問題 網路流

題目描述 description 農夫約翰知道每一條排水溝每分鐘可以流過的水量,和排水系統的準確布局 起點為水潭而終點為小溪的一張網 需要注意的是,有些時候從一處到另一處不只有一條排水溝。根據這些資訊,計算從水潭排水到小溪的最大流量。對於給出的每條排水溝,雨水只能沿著乙個方向流動,注意可能會出現雨水...