Cod sursa(job #2671066)

Utilizator TraianVVisan Traian-Dimitrie TraianV Data 11 noiembrie 2020 13:24:32
Problema Sate Scor 30
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.62 kb
#include<fstream>
using namespace std;
ifstream f("sate.in");
ofstream g("sate.out");
struct{
    int a,b,d;
}v[100025];
int n,m,x,y,s[30003];
int main()
{
    f>>n>>m>>x>>y;
    s[x]=1;
    for(int i=1;i<=n;i++)
        f>>v[i].a>>v[i].b>>v[i].d;
    while(!s[y])
    {
        for(int i=1;i<=m;i++)
        {
            if(s[v[i].a]  &&  !s[v[i].b]    )
                s[v[i].b] =   s[v[i].a] +   v[i].d;
            else
                if(!s[v[i].a] &&  s[v[i].b])
                    s[v[i].a] =   s[v[i].b] -   v[i].d;
        }
    }
    g<<s[y]-1<<"\n";
    f.close();
    g.close();
    return 0;
}