Pagini recente » Cod sursa (job #2051392) | Cod sursa (job #1090244) | Cod sursa (job #462771) | Cod sursa (job #1649364) | Cod sursa (job #2298856)
#include <fstream>
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
int N, M, S, dists[50005];
void Solve()
{
fin >> N >> M >> S;
for(int i = 1; i <= N; i++)
fin >> dists[i];
int x, y, c;
bool isOk = true;
for(int i = 1; i <= M; i++)
{
fin >> x >> y >> c;
if(dists[x] + c < dists[y] || dists[y] + c < dists[x])
isOk = false;
}
if(dists[S] != 0 || isOk == false)
fout << "NU\n";
else
fout << "DA\n";
}
int main()
{
int T;
fin >> T;
while(T--)
Solve();
return 0;
}