Pagini recente » Cod sursa (job #1232375) | Cod sursa (job #1463114) | Cod sursa (job #1008318) | Cod sursa (job #1401483) | Cod sursa (job #1414438)
#include<fstream>
#include<vector>
#include<queue>
using namespace std;
#define pb push_back
#define mp make_pair
#define N 50004
#define inf 1000000000
ifstream cin("dijkstra.in");
ofstream cout("dijkstra.out");
int n,m,i,a,b,c;
vector<pair<int,int> > g[N];
vector<int> d(N,inf);
queue<int> q;
int main()
{
cin>>n>>m;
for (i=1;i<=m;i++) cin>>a>>b>>c, g[a].pb(mp(b,c));
d[1]=0;
q.push(1);
while (q.size()){
int v=q.front();q.pop();
for (i=0;i<g[v].size();i++){
int to=g[v][i].first,len=g[v][i].second;
if (d[v]+len<d[to]){
d[to]=d[v]+len;
q.push(to);
}
}
}
for (i=2;i<=n;i++) cout<<d[i]<<' ';
return 0;
}