Cod sursa(job #1019756)

Utilizator Daniel3717Aleca Daniel Adrian Daniel3717 Data 31 octombrie 2013 21:26:41
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
using namespace std;
int t,it,v[50005],bb,n,m,s,i,a,b,c;
int main(void)
{
    FILE * f;
    f=fopen("distante.in","r");
    ofstream g("distante.out");
    fscanf(f,"%d",&t);
    for (it=1;it<=t;it++)
    {
        bb=1;
        fscanf(f,"%d%d%d",&n,&m,&s);
        for (i=1;i<=n;i++)
            fscanf(f,"%d",&v[i]);
        for (i=1;i<=m;i++)
        {
            fscanf(f,"%d%d%d",&a,&b,&c);
            if (v[a]+c<v[b])
                bb=0;
            if (v[b]+c<v[a])
                bb=0;
        }
        if (v[s]!=0)
            bb=0;
        if (bb==1)
            g<<"DA\n";
        else
            g<<"NU\n";
    }
    g.close();
    return 0;
}