Cod sursa(job #482680)

Utilizator c_adelinaCristescu Adelina c_adelina Data 4 septembrie 2010 15:49:18
Problema Sate Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <cstdio>
#define M 100100
#define N 30003

int sol[N],x[M],y[M],c[M];

int main()
{
	int n,m,a,b,i;
	
	freopen("sate.in","r",stdin);
	freopen("sate.out","w",stdout);
	scanf("%d %d %d %d",&n,&m,&a,&b);
	sol[a]=1;
	for (i=1;i<=m;++i) scanf("%d %d %d",&x[i],&y[i],&c[i]);
	while (!sol[b])
	{
		for (i=1;i<=m;++i)
		{
			if (sol[x[i]] && !sol[y[i]]) 
				sol[y[i]]=sol[x[i]]+c[i]; else
			if (!sol[x[i]] && sol[y[i]]) 
				sol[x[i]]=sol[y[i]]-c[i];
		}
	}
	printf("%d",sol[b]-1);
	
	return 0;}