Pagini recente » Cod sursa (job #984574) | Cod sursa (job #792671) | Rating Enciu Stoica (encius) | Cod sursa (job #2079980) | Cod sursa (job #2079558)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f ("royfloyd.in");
ofstream g ("royfloyd.out");
const int NMAX = 100;
int n;
int a[NMAX + 1][NMAX + 1];
void citeste() {
f >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
f >> a[i][j];
}
void rezolva() {
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] == 0) continue;
if (a[k][j] == 0) continue;
a[i][j] = min(a[i][j], a[i][k] + a[k][j]);
}
}
void scrie() {
for (int i = 1; i <= n; i++, g << '\n')
for (int j = 1; j <= n; j++)
g << a[i][j] << ' ';
}
int main() {
citeste();
rezolva();
scrie();
return 0;
}