Cod sursa(job #880283)

Utilizator PatrikStepan Patrik Patrik Data 16 februarie 2013 16:12:29
Problema Distante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
    #include<cstdio>
    #include<fstream>
    #define MAX 50001
    using namespace std;
    int T, N , M , S , d[MAX];
    bool sw ;

    int main()
    {
        int x , y , c;
        ifstream f("distante.in");
        ofstream g("distante.out");
        f>>T;
        for( int i = 1 ; i<= T ; ++i )
            {
                sw = 1;
                f>>N>>M>>S;
                for( int j = 1 ; j<= N ; ++j)
                    f>>d[j];
                if(d[S])sw = 0;
                for( int j = 1 ; j <= M ; ++j )
                    {
                        f>>x>>y>>c;
                        if(d[x]+c<d[y])sw = 0;
                    }
                if(sw)g<<"DA\n";
                else g<<"NU\n";
            }
        g.close();
        f.close();
        return 0;
    }