Cod sursa(job #2324824)

Utilizator Tudor27Tudor Iacob Tudor27 Data 21 ianuarie 2019 16:28:13
Problema Sate Scor 80
Compilator cpp-32 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;

ifstream fin("sate.in");
ofstream fout("sate.out");

int n,m,x,y;
bool b[30002],ex;
vector <int> v[30002];
vector <int> dst[30002];

void dfs(int xc,int d){
    if(xc==y){
        fout<<d<<"\n";
        exit(0);
    }
    for(int i=0;i<v[xc].size();i++){
        if(!b[v[xc][i]]){
            b[v[xc][i]]=true;
            dfs(v[xc][i],d+dst[xc][i]);
        }
    }
}

int main()
{
    fin>>n>>m>>x>>y;
    int ax,ax2,dx;
    for(int i=0;i<m;i++){
        fin>>ax>>ax2>>dx;
        dst[ax].push_back(dx);
        dst[ax2].push_back(-dx);
        v[ax].push_back(ax2);
        v[ax2].push_back(ax);
    }
    b[x]=true;
    dfs(x,0);
}