Pagini recente » Cod sursa (job #2295874) | Cod sursa (job #1590943) | Cod sursa (job #1174976) | Cod sursa (job #432834) | Cod sursa (job #386887)
Cod sursa(job #386887)
#include<fstream>
using namespace std;
int n,fmax;
int c[1000][1000],t[1000];
int bfs(int s,int d)
{
int coada[1000];
int st,dr;
st=dr=1;
coada[st]=1;
for(int i=1;i<=n;i++)
t[i]=-1;
t[st]=0;
while(st<=dr&&coada[dr]!=n)
{
for(int i=1;i<=n;i++)
if(c[st][i]&&t[i]==-1)
{
coada[++dr]=i;
t[i]=st;
}
st++;
}
if(coada[dr]==n)return 1;
else return 0;
}
int main()
{
int m,x,y,z,cmin;
FILE *fin=fopen("naxflow.in","r");
fscanf(fin,"%d%d",&n,&m);
for(;m>0;m--)
{
fscanf(fin,"%d%d%d",&x,&y,&z);
c[x][y]=z;
}
/*
while(bfs(1,n))
{
cmin=1<<30;
for(int i=n;t[i]!=0;i=t[i])
if(c[t[i]][i]<cmin)
cmin=c[t[i]][i];
for(int i=n;t[i]!=0;i=t[i])
{
c[t[i]][i]-=cmin;
c[i][t[i]]+=cmin;
}
fmax+=cmin;
}*/
FILE *fout=fopen("maxflow.out","w");
fprintf(fout,"%d",fmax);
return 0;
}