Cod sursa(job #2663348)

Utilizator Guccifer2429Julien Iancu Guccifer2429 Data 26 octombrie 2020 09:15:02
Problema Sate Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
deque < pair < int, int > > graf[30005];
deque < int> coada;
bool vizitat[30005];
int n,m,X,y,s;
void citire()
{
    fin>>n>>m>>X>>y;
    for(int i=1; i<=m; i++)
    {
        int a,b,d;
        fin>>a>>b>>d;
        graf[a].push_back(make_pair(b,d));
        graf[b].push_back(make_pair(a,-d));
    }
}
void drum(int x)
{
    if(x==y)
    {
        fout<<s;
    }
    else
    {
        for(unsigned int i=0; i<graf[x].size(); i++)
        {
            if(vizitat[graf[x][i].first]==0)
            {
                vizitat[graf[x][i].first]=1;
                s=graf[x][i].second+s;
                coada.push_back(graf[x][i].first);
                drum(graf[x][i].first);
                coada.pop_back();
                s=s-graf[x][i].second;
            }
        }
    }

}
int main()
{
    citire();
    drum(X);
}