Pagini recente » Cod sursa (job #2934148) | Cod sursa (job #463403) | Cod sursa (job #1824531) | Cod sursa (job #589972) | Cod sursa (job #1228882)
#include <cstdio>
#include <vector>
using namespace std;
vector<pair<int,int> >v[30010];
int sol[30010],n,m,a,b,x,y,c,i;
char vaz[30010];
void dfs(int nod)
{
vector<pair<int,int> >::iterator it;
vaz[nod]=1;
for(it=v[nod].begin();it!=v[nod].end();it++)
if(!vaz[it -> first])
{
sol[it -> first]=sol[nod] + it -> second;
dfs(it -> first);
}
}
int main()
{
freopen("sate.in", "r", stdin);
freopen("sate.out", "w", stdout);
scanf("%d%d%d%d",&n,&m,&a,&b);
for(i=1;i<=n;i++)
{
scanf("%d%d%d",&x,&y,&c);
v[x].push_back(make_pair(y,c));
v[y].push_back(make_pair(x,-c));
}
dfs(a);
printf("%d",sol[b]);
return 0;
}