Cod sursa(job #1915878)

Utilizator sandupetrascoPetrasco Sandu sandupetrasco Data 8 martie 2017 22:55:35
Problema Algoritmul lui Dijkstra Scor 90
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <bits/stdc++.h>

using namespace std;

int n, m, d[50050];
struct my{int x, y, l;}V[250100];
bool u = 1;
int main()
{
	ifstream cin("dijkstra.in");
	ofstream cout("dijkstra.out");
	cin >> n >> m;
	for(int i=1;i<=m;i++)
	cin>>V[i].x>>V[i].y>>V[i].l;
	for(int i=2;i<=n;i++)d[i]=1e9;
	while(u){
	u=0;
	for(int i=1;i<=m;i++)
	if(d[V[i].y]> d[V[i].x] + V[i].l)
				d[V[i].y] = d[V[i].x] + V[i].l, u = 1;
	}
	for (int i = 2; i <= n; i++)
		cout << (d[i] == 1e9 ? 0 : d[i]) << " ";
	return 0;
}