Cod sursa(job #682554)

Utilizator lucian666Vasilut Lucian lucian666 Data 19 februarie 2012 09:36:16
Problema Sate Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream>
using namespace std;
ofstream out("sate.out");
int a[301][301],x,y,n,m,v[301];
void citire();
void dfs(int ,int );
int main()
{
	citire();
	dfs(x,0);
	return 0;
}
void citire()
{
	ifstream in("sate.in");
	in>>n>>m>>x>>y;
	int i,j,c;
	for(;m;m--)
	{
		in>>i>>j>>c;
		a[i][j]=a[j][i]=c;
	}
}
void dfs(int start,int d)
{
	int i,j;
	if(start==y)
	{
		out<<d<<" ";
		exit(0);
	}
	v[start]=1;
	for(i=1;i<=n;i++)
		if(!v[i]&&a[start][i]>0)
			if(i<start)
			{
				d-=a[start][i];
				dfs(i,d);
				d+=a[start][i];
			}
			else
				if(i>start)
				{
					d+=a[start][i];
					dfs(i,d);
					d-=a[start][i];
				}
}