Pagini recente » Istoria paginii runda/lotj1/clasament | Cod sursa (job #2457466) | Rating Canceal Cristian (cristicanceal) | Cod sursa (job #2043154) | Cod sursa (job #1628595)
#include <fstream>
#define oo 1000001
using namespace std;
ifstream f("dijkstra.in");
ofstream g("dijkstra.out");
struct nod{
long x = 0, y = 0, d = oo;
};
nod G[250002];
long D[50002];
long N, M;
int main()
{
f >> N >> M;
for(long i = 1; i <= M; i++) f >> G[i].x >> G[i].y >> G[i].d;
for(long i = 1; i <= N; i++) D[i] = oo;
D[1] = 0;
long ok = 0;
while(!ok){
ok = 1;
for(long i = 1; i <= M; i++)
if(D[G[i].y] > D[G[i].x] + G[i].d)
D[G[i].y] = D[G[i].x] + G[i].d, ok = 0;
}
for(long i = 2; i <= N; i++)
if(D[i] != oo) g << D[i] << ' ';
else g << "0 ";
return 0;
}