Cod sursa(job #2775036)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 14 septembrie 2021 06:03:45
Problema Sate Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>
#include<stdlib.h>
typedef struct O {
    int i,c;
    struct O *n;
}N;
N *l[30001],*t;
int i,n,m,x,y,j,p,u,k,s[30001],e[30001];
void A(int i,int j,int k)
{
    N *p=(N*)malloc(sizeof(N));
    p->i=j,p->c=k,p->n=l[i],l[i]=p;
}
int main()
{
    freopen("sate.in","r",stdin),freopen("sate.out","w",stdout),scanf("%d%d%d%d",&n,&m,&x,&y);
    while(m--)
        scanf("%d%d%d",&i,&j,&k),A(i,j,k),A(j,i,-k);
    for(s[u++]=x;p<u&&!e[y];++p)
        for(j=s[p],t=l[j];t;t=t->n)
            if(!e[t->i])
                e[s[u++]=t->i]=t->c+e[j];
    printf("%d",e[y]);
    return 0;
}