Pagini recente » Cod sursa (job #2222775) | Cod sursa (job #921436) | Cod sursa (job #106773) | Cod sursa (job #2502691) | Cod sursa (job #2395984)
#include <bits/stdc++.h>
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int a[1001][1001];
int n;
void citire() {
f >> n;
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
f >> a[i][j];
}
void roy() {
for(int k=1; k<=n; k++)
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
if(a[i][k] and a[k][j] and (a[i][j] > a[i][k] + a[k][j] or a[i][j] == 0) and i != j)
a[i][j] = a[i][k] + a[k][j];
}
void afisare() {
for(int i=1; i<=n; i++) {
for(int j=1; j<=n; j++)
g << a[i][j] << " ";
g << "\n";
}
}
int main() {
citire();
roy();
afisare();
}