Cod sursa(job #2196689)

Utilizator Draganoid345Rusnac Dragos Draganoid345 Data 20 aprilie 2018 08:47:43
Problema Sate Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define N 30002
using namespace std;

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

vector<pair<int,int>> V[N];
int n,m,x,y,viz[N],a,b,c;


void dfs(int x){
	
	for(int i=0;i<V[x].size();i++){
		int temp=V[x][i].first;
		int cost=V[x][i].second;
		if(!viz[temp]){
			viz[temp]=viz[x]+cost;
			dfs(temp);
		}
	}
}

int main(){
	ios_base::sync_with_stdio(false);
	fin.tie(NULL);
	fin>>n>>m>>x>>y;
	if(y<x) swap(x,y);
	for(int i=0;i<m;i++){
		fin>>a>>b>>c;
		V[a].push_back(make_pair(b,c));
		V[b].push_back(make_pair(a,-c));
	}
	dfs(x);
	fout<<viz[y];
	return 0;
}