Pagini recente » Cod sursa (job #1591141) | Cod sursa (job #1739908) | Cod sursa (job #1303657) | Cod sursa (job #2755539) | Cod sursa (job #1042587)
#include <fstream>
#include <iostream>
#include <climits>
using namespace std;
#define MAX 1001
int main(){
const char fin[] = "royfloyd.in";
const char fout[] = "royfloyd.out";
ifstream f(fin);
ofstream g(fout);
int n;
f>>n;
int a[n][n], i, j, k;
for (i = 0; i < n; i++)
for (j = 0; j < n; j++) {
f>>a[i][j];
if ( i !=j && a[i][j] == 0 ) a[i][j] = MAX;
}
f.close();
for (j = 0; j < n; j++)
for (i = 0; i < n; i++)
for (k = 0; k < n; k++)
if (a[i][j] + a[j][k] < a[i][k]) a[i][k] = a[i][j] + a[j][k];
for (i = 0; i < n; i++){
for (j = 0; j < n; j++)
g<<a[i][j]<<" ";
g<<endl;
}
g.close();
return 0;
}