Pagini recente » Cod sursa (job #1966388) | Cod sursa (job #6958) | Cod sursa (job #3269109) | Cod sursa (job #304227) | Cod sursa (job #2486510)
#include <algorithm>
#include <stack>
#include <queue>
#include <deque>
#include <vector>
#include <string>
#include <set>
#include <map>
#include <cstring>
using namespace std;
//#include <iostream>
#include <fstream>
//ifstream cin ("input.in");
//ofstream cout ("output.out");
ifstream cin ("distante.in");
ofstream cout ("distante.out");
static const int INF = 1e9;
static const int NMAX = 5e4+5;
int v[NMAX];
string solve(int n, int m, int s) {
for ( int i = 1; i <= n; ++i ) {
cin>>v[i];
}
if ( v[s] ) {
return "NU";
}
for ( int i = 1; i <= m; ++i ) {
int a, b, c;
cin>>a>>b>>c;
if ( v[a]+c < v[b] || v[b]+c < v[a] ) {
return "NU";
}
}
return "DA";
}
int main() {
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int t;
cin>>t;
while ( t-- ) {
int n, m, s;
cin>>n>>m>>s;
cout<<solve(n, m, s)<<'\n';
}
}