Pagini recente » Cod sursa (job #875480) | Cod sursa (job #696278) | Cod sursa (job #2529368) | Cod sursa (job #2281827) | Cod sursa (job #1313133)
#include<stdio.h>
using namespace std;
#define FIN "royfloyd.in"
#define FOUT "royfloyd.out"
int g[102][102];
int n;
int read()
{
freopen(FIN, "r", stdin);
freopen(FOUT, "w", stdout);
scanf("%d", &n);
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; j++)
scanf("%d", &g[i][j]);
return 0;
}
int royFloyd()
{
for(int k=1;k<=n;k++)
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(g[i][j] > g[i][k] + g[k][j])
g[i][j] = g[i][k] + g[k][j];
return 0;
}
int write()
{
for(int i = 1; i <= n; i++)
{
for(int j = 1; j <= n; j++)
printf("%d ", g[i][j]) ;
printf("\n");
}
return 0;
}
int main()
{
read();
royFloyd();
write();
return 0;
}