Pagini recente » Cod sursa (job #1963792) | Cod sursa (job #2000921) | Cod sursa (job #297940) | Cod sursa (job #102570) | Cod sursa (job #2263285)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
struct drum
{
int nod,cost;
} varaux1,varaux2;
int seen [40001];
int n,x,y,distanta;
void dfs ( int nod, vector<drum>v[100050] )
{
if(nod==y)
{
fout<<distanta;
return;
}
seen[nod]=-1;
for(int i=0; i<v[nod].size(); i++)
if(seen[v[nod][i].nod]==0)
{
distanta+=v[nod][i].cost;
dfs(v[nod][i].nod,v);
distanta-=v[nod][i].cost;
}
}
int main()
{
vector<drum>v[100050];
int i,m,a,b,dist;
fin>>n>>m>>x>>y;
for(i=0; i<m; i++)
{
fin>>a>>b>>dist;
varaux1= {b,dist};
varaux2= {a,-dist};
v[a].push_back(varaux1);
v[b].push_back(varaux2);
}
dfs(x,v);
return 0;
}