Pagini recente » Cod sursa (job #2634383) | Cod sursa (job #2656465) | Cod sursa (job #2319836) | Cod sursa (job #2577807) | Cod sursa (job #2571809)
#include <bits/stdc++.h>
using namespace std;
const int N_MAX = 100 + 1;
const int oo = 1 << 29;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int N, DP[N_MAX][N_MAX];
int main()
{
fin >> N;
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= N; ++j)
{
fin >> DP[i][j];
if(i != j && DP[i][j] == 0) DP[i][j] = oo;
}
for(int k = 1; k <= N; ++k)
for(int i = 1; i <= N; ++i)
for(int j = 1; j <= N; ++j)
DP[i][j] = min(DP[i][j], DP[i][k] + DP[k][j]);
for(int i = 1; i <= N; ++i)
{
for(int j = 1; j <= N; ++j)
fout << DP[i][j] << ' ';
fout << '\n';
}
}