Cod sursa(job #887333)

Utilizator zurzic_doruzurzic zeljko zurzic_doru Data 23 februarie 2013 18:18:29
Problema Algoritmul lui Dijkstra Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<stdio.h>
int a[10000][10000];
int main()
{
	
	int n,m,i,j,d[10000],x,c,y;
	freopen("dijkstra.in","r",stdin);
	freopen("dijkstra.out","w",stdout);
	scanf("%d%d",&n,&m);
	for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
			if(i==j)
				a[i][j]=0;
			else
				a[i][j]=1000000000;
	for(i=1;i<=m;i++)
	{
		scanf("%d%d%d",&x,&y,&c);
		a[x][y]=c;
	}
	for(i=1;i<=n;i++)
		d[i]=a[1][i];
	for(i=2;i<=n;i++)
		for(j=1;j<=n;j++)
			if(d[j]>d[i]+a[i][j])
				d[j]=d[i]+a[i][j];
	for(i=2;i<=n;i++)
		printf("%d ",d[i]);
	return 0;
}