Cod sursa(job #1395892)

Utilizator lolmanDomuta Dariu lolman Data 21 martie 2015 18:22:06
Problema Sate Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <iostream>
#include <vector>
#include <fstream>
#define nmax 30001
using namespace std;

vector <int> v[nmax];
int n,m,y,sol,x,cost[500][500],source,dest,z;
bool seen[30001];

ifstream f("sate.in");
ofstream g("sate.out");

void dfs(int x)
     {
        seen[x]=true;

        for (int i =0;i<v[x].size();i++)
                {
                    int y=v[x][i];
                    if (!seen[y])
                    {

                        if (x<y) sol+=cost[x][y];
                        if (x>y) sol-=cost[x][y];
                        if (y==dest) return;
                        dfs(y);
                    }


                }
     }
int main()
{


    f>>n>>m>>source>>dest;
    for(int i=1;i<=m;i++)
       {
           f>>x>>y>>z;
           v[x].push_back(y);
           v[y].push_back(x);
           cost[x][y]=z;
           cost[y][x]=z;
       }
    dfs(source);

    g<<sol;
    return 0;
}