Pagini recente » Cod sursa (job #382242) | Cod sursa (job #1925347) | Cod sursa (job #3131618) | Cod sursa (job #1815059) | Cod sursa (job #2158386)
#include <stdio.h>
#include <iostream>
#define N 101
#define min(a,b) (a < b ? a:b)
using namespace std;
FILE *fr = fopen("royfloyd.in","r");
FILE *fw = fopen("royfloyd.out","w");
short n;
int v[N][N];
int main(){
fscanf(fr,"%hd",&n);
for(short i=1; i<=n; ++i)
for(short j=1; j<=n; ++j)
fscanf(fr,"%d",&v[i][j]);
for(short k=1; k<=n; ++k)
for(short i=1; i<=n; ++i)
for(short j=1; j<=n; ++j)
if(v[i][k] != 0 && v[k][j] !=0)
v[i][j] = min(v[i][j] , v[i][k] + v[k][j]);
for(int i=1; i<=n; ++i)
{
for(int j=1; j<=n; ++j)
fprintf(fw,"%d ",v[i][j]);
fprintf(fw,"\n");
}
return 0;
}