Cod sursa(job #650704)

Utilizator GrimpowRadu Andrei Grimpow Data 18 decembrie 2011 19:58:12
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include <fstream>
using namespace std;

ifstream f("distante.in");
ofstream g("distante.out");


int n , m , s ,  D[50001];

void solve_test()
{
	f>>n>>m>>s;
	int x , y , c , ans =  1;
	for(int i=1;i<=n;++i)
		f>>D[i];
	if(D[s]!=0) ans = 0;

	for(;m;m--)
	{
		f>>x>>y>>c;
		if(D[x] + c<D[y] || D[y] + c<D[x])
			ans = 0;
	}
if(ans==1) g<<"DA\n";
else g<<"NU\n";

}

int main()
{
	int t;
	for(f>>t;t;t--)
		solve_test();
	return 0;
}