Pagini recente » Cod sursa (job #247678) | Cod sursa (job #1659386) | Cod sursa (job #193315) | Cod sursa (job #2158377) | Cod sursa (job #1422938)
#include <iostream>
#include <fstream>
#define NMax 50005
using namespace std;
int N,M,S,T,D[NMax],a,b,c;
ifstream g("distante.in");
ofstream f("distante.out");
int Solve()
{
g>>N>>M>>S;
for(int i=1;i<=N;i++)
g>>D[i];
int ok=1;
for(int i=1;i<=M;i++)
{
g>>a>>b>>c;
if(D[a]+c<D[b] || D[b]+c<D[a])
ok=0;
}
return ok && D[S]==0;
}
int main()
{
g>>T;
while(T--)
{
if(Solve())
f<<"DA\n";
else
f<<"NU\n";
}
}