Cod sursa(job #1424991)

Utilizator RathebaSerbanescu Andrei Victor Ratheba Data 26 aprilie 2015 10:54:17
Problema Sate Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#include <vector>
#include <algorithm>
#define MAX 30001

using namespace std;
vector <pair<int, int> > la[MAX];
int n,m,x,y,v[MAX];
ifstream f("sate.in");
ofstream g("sate.out");

void dfs(int nod)
{
    int i;
    for(i=0;i<la[nod].size();i++)
        if(v[la[nod][i].first]==0)
        {
            int fiu=la[nod][i].first;
            int w=la[nod][i].second;
            v[fiu]=v[nod]+w;
            dfs(fiu);
        }
}
int main()
{
    f>>n>>m>>x>>y;
    int i,u,fiu,w;
    for(i=1;i<=n;i++)
    {
        f>>u>>fiu>>w;
        la[u].push_back(make_pair(fiu,w));
        la[fiu].push_back(make_pair(u,-w));
    }
    dfs(x);
    g<<v[y];
}