Pagini recente » Cod sursa (job #301313) | Cod sursa (job #2662280) | Cod sursa (job #1163428) | Cod sursa (job #2096948) | Cod sursa (job #2679688)
#include <bits/stdc++.h>
#define INF 100000
using namespace std;
int n;
int a[105][105];
int main()
{
freopen("royfloyd.in", "r", stdin);
freopen("royfloyd.out", "w", stdout);
scanf("%d", &n);
for (int i=1;i<=n;++i)
for (int j=1;j<=n;++j)
a[i][j] = INF;
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)
if (i != k)
for (int j=1;j<=n;++j)
if (i!=j && j!=k && a[i][j] > a[i][k] + a[k][j])
a[i][j] = a[i][k] + a[k][j];
for (int i=1;i<=n;++i, printf("\n"))
for (int j=1;j<=n;++j)
if (a[i][j] == INF) printf("0 ");
else printf("%d ", a[i][j]);
}