Pagini recente » Cod sursa (job #1405173) | Cod sursa (job #1955409) | Cod sursa (job #3158807) | Cod sursa (job #1352303) | Cod sursa (job #3152226)
#include <bits/stdc++.h>
using namespace std;
//ifstream in("apa.in");
//ofstream out("apa.out");
ifstream in("maxflow.in");
ofstream out("maxflow.out");
int n, m, g[1001][1001], p[1001], d[1001];
int x, y, c;
queue<int> coada;
void bfs(int x)
{
coada.push(x);
while(!coada.empty())
{
x=coada.front();
for(int i=1; i<=n; i++)
{
if(g[x][i]>0 && i!=x)
{
int val=min(p[i], d[x]);
coada.push(i);
d[x]-=min(val, g[x][i]);
p[i]-=min(val, g[x][i]);
d[i]+=min(val, g[x][i]);
}
}
coada.pop();
}
}
int main()
{
in >> n >> m;
//int m=10;
for(int i=1; i<=m; i++)
{
in >> x >> y >> c;
g[x][y]=c;
if(x==1)
d[x]+=c;
p[y]+=c;
}
bfs(1);
out << d[n];
return 0;
}