Cod sursa(job #1068542)

Utilizator sddddgjdZloteanu Anastasia sddddgjd Data 28 decembrie 2013 14:27:55
Problema Distante Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<stdio.h>
#define MAX 100000
int ultim[2*MAX],prev[2*MAX],dist[MAX],coada[MAX];
int link[2*MAX],distof2[2*MAX],mindist[50000];
int main()
{
    FILE *fin,*fout;
    fin=fopen("distante.in","r");
    fout=fopen("distante.out","w");
    int t;
    fscanf(fin,"%d",&t);
    while(t)
    {
        int n,m,s;
        fscanf(fin,"%d%d%d",&n,&m,&s);
        int i,pp=1;
        for(i=1; i<=n; i++)
            fscanf(fin,"%d",&mindist[i]);
        for(i=1;i<=m;i++)
            {
                int x,y,z;
                fscanf(fin,"%d%d%d",&x,&y,&z);
                if(mindist[x]+z<mindist[y])
                    pp=0;
                if(mindist[y]+z<mindist[x])
                    pp=0;
            }
        if(mindist[s]!=0)
            pp=0;
        if(pp)
            fprintf(fout,"DA\n");
        else
            fprintf(fout,"NU\n");
        t--;
    }
    return 0;
}