Pagini recente » Cod sursa (job #2952475) | Cod sursa (job #1045113) | Cod sursa (job #2587363) | Cod sursa (job #943756) | Cod sursa (job #1197338)
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int n, a[105][105];
void Citire()
{
int i, j;
scanf("%d", &n);
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
scanf("%d", &a[i][j]);
}
void Solve()
{
int i, j, k;
for (k=1; k<=n; k++)
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
if (a[i][k]+a[k][j]<a[i][j])
a[i][j]=a[i][k]+a[k][j];
}
void Afisare()
{
int i, j;
for (i=1; i<=n; i++, printf("\n"))
for (j=1; j<=n; j++)
printf("%d ", a[i][j]);
}
int main()
{
freopen("royfloyd.in", "r", stdin);
freopen("royfloyd.out", "w", stdout);
Citire();
Solve();
Afisare();
return 0;
}