Cod sursa(job #2265960)

Utilizator BotzkiBotzki Botzki Data 21 octombrie 2018 22:34:19
Problema Sate Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <fstream>
#include <vector>
#include <queue>
#include <stdlib.h>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
const int NMAX=30000;
struct graf
{
    int nod, distanta;
};
vector <graf>G[NMAX+5];
int viz[NMAX+5];
int t, s, x, y;
void dfs(int nod)
{
    if(nod==y)
    {
        fout<<s<<"\n";
        exit(0);
    }
    else
    {
        viz[nod]=1;
        for( int i=0;i<G[nod].size();i++)
        {
            if(viz[G[nod][i].nod]==0)
            {
                s=s+G[nod][i].distanta;
                dfs(G[nod][i].nod);
                s=s-G[nod][i].distanta;
            }

        }
    }

}
int main()
{
    int n, m, a, b, d, i;
    graf aux;
    fin>>n>>m>>x>>y;
    for(i=1;i<=m;i++)
    {
        fin>>a>>b>>d;
        aux.distanta=d;
        aux.nod=b;
        G[a].push_back(aux);
        aux.distanta=-d;
        aux.nod=a;
        G[b].push_back(aux);
    }
    dfs(x);


    return 0;
}