Pagini recente » Cod sursa (job #1221308) | Cod sursa (job #489132) | infoarena - te ajutam sa devii olimpic! | Cod sursa (job #692847) | Cod sursa (job #1520401)
#include<fstream>
#include<queue>
#include<vector>
#include<bitset>
using namespace std;
#define dim 30005
int n, m, x, y, a, b, c, dist;
vector <int> v[dim];
vector <int> d[dim];
queue <int> q;
int l[dim];
bitset <dim> viz;
ifstream fin("sate.in");
ofstream fout("sate.out");
int main(){
fin>>n>>m>>x>>y;
for(int i=1; i<=m; i++){
fin>>a>>b>>dist;
v[a].push_back(b);
v[b].push_back(a);
d[a].push_back(dist);
d[b].push_back(-dist);
}
q.push(x);
viz[x]=true;
while(q.size()){
c=q.front();
q.pop();
for(int i=0;i<v[c].size();++i){
int k=v[c][i];
if(!viz[k]){
viz[k]=true;
l[k]=l[c]+d[c][i];
q.push(k);
}
}
if(c==y) q.empty();
}
fout<<l[y];
}