Cod sursa(job #1016148)

Utilizator diana97Diana Ghinea diana97 Data 25 octombrie 2013 20:40:09
Problema Distante Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f ("distante.in");
ofstream g ("distante.out");

int n, m, nodSursa;
int cost[50002];


void citeste ()
{
    f>>n>>m>>nodSursa;
    for (int i=1; i<=n; i++) f>>cost[i];
}

int eOK ()
{
    citeste ();
    int nod1, nod2, costnou;
    int ok=1;
    if (cost[nodSursa]) return 0;
    for(int i=1; i<=m; i++)
    {
        f>>nod1>>nod2>>costnou;
        if (cost[nod1]+costnou<cost[nod2] || cost[nod2]+costnou<cost[nod1]) ok=0;
    }
    return ok;
}

int main ()
{
    int nrTeste;
    f>>nrTeste;
    for (int i=1; i<=nrTeste; i++)
    {
        if (eOK ()) g<<"DA";
        else g<<"NU";
        g<<'\n';
    }
    return 0;
}