Cod sursa(job #2196682)

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

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

vector<pair<int,int>> V[30001];
int n,m,x,y,viz[30001];


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(){
	fin>>n>>m>>x>>y;
	if(y<x) swap(x,y);
	for(int i=0;i<m;i++){
		int a,b,c;
		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;
}