Pagini recente » Cod sursa (job #1701936) | Cod sursa (job #700838) | Cod sursa (job #1739547) | Cod sursa (job #2810459) | Cod sursa (job #1478613)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
const int NMax = 50005;
int D[NMax];
int main(){
int t, n, m, s, a, b, c;
bool good;
fin >> t;
while(t--){
fin >> n >> m >> s;
good = true;
for(int i = 1; i <= n; i++){
fin >> D[i];
}
if(D[s]){
good = false;
}
for(int i = 1; i <= m; i++){
fin >> a >> b >> c;
if(D[a] + c < D[b] || D[b] + c < D[a]){
good = false;
}
}
if(good){
fout << "DA\n";
} else {
fout << "NU\n";
}
}
return 0;
}