Pagini recente » Cod sursa (job #1049600) | Cod sursa (job #808729) | Cod sursa (job #1853047) | Cod sursa (job #3263072) | Cod sursa (job #2707967)
//Ilie Dumitru
#include<cstdio>
int pond[100][100], cost[100][100], N;
void royfloyd()
{
int i, j, k;
for(i=0;i<N;++i)
for(j=0;j<N;++j)
cost[i][j]=pond[i][j];
for(k=0;k<N;++k)
for(i=0;i<N;++i)
for(j=0;j<N;++j)
if(cost[i][j]>cost[i][k]+cost[k][j])
cost[i][j]=cost[i][k]+cost[k][j];
}
int main()
{
freopen("royfloyd.in", "r", stdin);
freopen("royfloyd.out", "w", stdout);
int i, j;
scanf("%i", &N);
for(i=0;i<N;++i)
for(j=0;j<N;++j)
scanf("%i", &pond[i][j]);
fclose(stdin);
royfloyd();
for(i=0;i<N;++i)
{
for(j=0;j<N;++j)
printf("%i ", cost[i][j]);
printf("\n");
}
fclose(stdout);
return 0;
}