Pagini recente » Cod sursa (job #334417) | Cod sursa (job #2396084) | Cod sursa (job #2489074) | Cod sursa (job #233066) | Cod sursa (job #1791617)
#include <fstream>
#include <queue>
#define nmax 301
using namespace std;
ifstream fin("sate.in");
ofstream fout("sate.out");
int n,m,a[nmax][nmax],b[nmax][nmax];
int x,y;
int t[nmax],l[nmax];
void BFS(int p,int q)
{queue <int> C;
int v,i;
int viz[nmax]={0};
C.push(p); viz[p]=1;
while(!C.empty()&&viz[q]==0)
{v=C.front(); C.pop();
for(i=1;i<=n;i++)
if(b[v][i]>0&&viz[i]==0)
{C.push(i); viz[i]=1;
if(i>v) l[i]=l[v]+b[v][i];
else l[i]=l[v]-b[v][i];
t[i]=v;
}
}
}
int main()
{int i,x1,x2,v;
fin>>n>>m>>x>>y;
for(i=1;i<=m;i++)
{fin>>x1>>x2>>v;
b[x1][x2]=b[x2][x1]=v;
}
BFS(x,y);
fout<<l[y];
return 0;
}