Cod sursa(job #742958)
Utilizator | Mihalea Mircea mmimaa | Data | 2 mai 2012 11:31:15 |
---|---|---|---|
Problema | Floyd-Warshall/Roy-Floyd | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <cstdio>
int a[200][200];
int main()
{
freopen("fis.in","r",stdin);
int n;
scanf("%d",&n);
for (int i=1 ; i<=n ; i++)
for (int j=1; j<=n; j++)
scanf("%d",&a[i][j]);
for (int k=1 ; k<=n ; k++)
for (int i=1 ; i<=n ; i++)
for (int j=1 ; j<=n ; j++)
if(a[i][k]+a[k][j]<a[i][j])
a[i][j]=a[i][k]+a[k][j];
for (int i=1 ; i<=n ; i++)
{
for (int j=1 ; j<=n ; j++)
printf("%d ",a[i][j]);
printf("\n");
}
}