Cod sursa(job #1122759)

Utilizator traian.vidrascutraian vidrascu traian.vidrascu Data 25 februarie 2014 20:16:22
Problema Sate Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

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

struct nod{int v;int co;};
vector <nod> gr[30005];
nod nod1;
int n,m,x,y,c,x1,y1,viz[30005],dis[30005];

void dfs(int p)
{
  int i;
  viz[p]=1;
  for(i=0;i<gr[p].size();i++)
      if(viz[gr[p][i].v]!=1 )
          dis[gr[p][i].v]=dis[p]+gr[p][i].co;

}

int main()
{
    int i;
    f>>n>>m>>x1>>y1;
    for(i=1;i<=m;i++)
    {
      f>>x>>y>>c;
      nod1.v=y;
      nod1.co=c;
      gr[x].push_back(nod1);
      nod1.v=x;
      nod1.co=-c;
      gr[y].push_back(nod1);
    }
    for(i=1;i<=n;i++)
        dis[i]=20000000;
     dis[x1]=0;
    dfs(x1);
    g<<dis[y1];
    return 0;
}