Cod sursa(job #1450922)
| Utilizator | Data | 15 iunie 2015 10:28:09 | |
|---|---|---|---|
| Problema | Distante | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.66 kb |
#include<fstream>
#include<vector>
#define INF 2000000000
using namespace std;
ifstream fin("distante.in");
ofstream fout("distante.out");
int d[100000];
int n,m,a,b,c;
int i,t,S,VAL;
int main(){
fin>>t;
for(;t;t--){
fin>>n>>m>>S;
for(i=1;i<=n;i++){
fin>>d[i];
}
VAL=0;
if(d[S]!=0){
VAL=1;
}
for(i=1;i<=m;i++){
fin>>a>>b>>c;
if(d[a]>d[b]+c || d[b]>d[a]+c){
VAL=1;
}
}
if(VAL==0){
fout<<"DA\n";
}else{
fout<<"NU\n";
}
}
return 0;
}
