Pagini recente » Cod sursa (job #2125145) | Cod sursa (job #1781545) | Cod sursa (job #2901847) | Cod sursa (job #1771924) | Cod sursa (job #1128544)
#include <cstdio>
#include <vector>
#include <queue>
using namespace std;
int main() {
int t, n, m, i, x, y, k, s, c, d[50002];
bool v;
freopen("distante.in", "r", stdin);
freopen("distante.out", "w", stdout);
scanf("%d", &t);
for (k = 1; k <= t; k++) {
scanf("%d %d %d", &n, &m, &s);
v = true;
for (i = 1; i <= n; i++) scanf("%d", &d[i]);
if (d[s] == 0) {
for (i = 1; i <= m; i++) {
scanf("%d %d %d", &x, &y, &c);
if ((d[x] + c < d[y]) || (d[y] + c < d[x])) {
v = false;
printf("NU\n");
break;
}
}
if (v == true) {
printf("DA\n");
}
}
else printf("NU\n");
}
return 0;
}