Cod sursa(job #2671070)

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