Pagini recente » Cod sursa (job #1207036) | Cod sursa (job #1585095) | Cod sursa (job #324746) | Cod sursa (job #2610883) | Cod sursa (job #1373679)
#include<iostream>
#include<fstream>
#define NMAX 50001
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
int n,m,t,s;
int solve()
{ int d[n+1];
for(int i=1;i<=n;i++)
fin>>d[i];
if(d[1]!=0)return 0;
int x,y,c,ok=0;
for(int i=1;i<=m;i++)
{
fin>>x>>y>>c;
if(d[x]+c<d[y])return 0;
if(x!=s&&d[x]+c==d[y])ok=1;
}
if(!ok)return 0;
return 1;
}
int main()
{
fin>>t;int x,y,c;
for(int i=1;i<=t;i++)
{
fin>>n>>m>>s;
if(solve())
fout<<"DA"<<'\n';
else
fout<<"NU"<<'\n';
}
fin.close();
fout.close();
return 0;
}