Pagini recente » Cod sursa (job #1438639) | Cod sursa (job #2428770) | Cod sursa (job #832348) | Cod sursa (job #754954) | Cod sursa (job #2155270)
#include <cstdio>
using namespace std;
#define NMAX 105
int n, a[NMAX][NMAX];
int main(){
int k, i, j;
FILE *fin, *fout;
fin = fopen("royfloyd.in", "r");
fout = fopen("royfloyd.out", "w");
fscanf(fin, "%d ", &n);
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
fscanf(fin, "%d ", &a[i][j]);
///Floyd Warshal
for(k=1; k<=n; k++)
for(i=1; i<=n; i++)
for(j=1; j<=n; j++)
if(a[i][k] && a[k][j] && (a[i][j] > a[i][k] + a[k][j] || !a[i][j]))
a[i][j] = a[i][k] + a[k][j];
for(i=1; i<=n; i++){
for(j=1; j<=n; j++)
fprintf(fout, "%d ", a[i][j]);
fprintf(fout, "\n");
}
return 0;
}