Pagini recente » Cod sursa (job #137078) | Cod sursa (job #1359856) | Cod sursa (job #751392) | Cod sursa (job #3244352) | Cod sursa (job #2275430)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
const int Nmax=3e4+2;
int n,m,X,Y;
bitset<Nmax>viz;
vector<pair<int,int> >L[Nmax];
queue<pair<int,int> >q;
void Dfs(int nod,int dist)
{
viz[nod]=1;
for(auto i:L[nod])
{
if(i.first==Y)
{
fout<<dist+i.second<<"\n";
exit(0);
}
if(!viz[i.first])Dfs(i.first,dist+i.second);
}
}
int main()
{
fin>>n>>m>>X>>Y;
int x,y,d;
for(int i=1;i<=m;i++)
{
fin>>x>>y>>d;
L[x].push_back({y,d});
L[y].push_back({x,-d});
}
Dfs(X,0);
fin.close();
fout.close();
return 0;
}