Pagini recente » Cod sursa (job #517189) | Cod sursa (job #248676) | Clasament simulare-cartita-37 | Cod sursa (job #1859937) | Cod sursa (job #2477419)
#include<fstream>
#include<queue>
#include<vector>
using namespace std;
ifstream cin("dijkstra.in");
ofstream cout("dijkstra.out");
vector < pair <int, int> >v[1000];
int n,m;
int main()
{
cin>>n>>m;int dist[n+1];
for(int i=2;i<=n;i++)dist[i]=99999;
dist[1]=0;
for(int i=1;i<=m;i++)
{
int a,b,c;cin>>a>>b>>c;
v[a].push_back(make_pair(c,b));
}
for(int i=1;i<=n;i++)
{
for(unsigned j=0;j<v[i].size();j++)
{
if(dist[v[i][j].second]>v[i][j].first+dist[i]&&dist[i]!=99999){
dist[v[i][j].second]=v[i][j].first+dist[i];
}
}
}
for(int i=2;i<=n;i++)cout<<dist[i]<<" ";
}