Pagini recente » Cod sursa (job #2525844) | Cod sursa (job #248743) | Cod sursa (job #328912) | Cod sursa (job #1041845) | Cod sursa (job #1240142)
#include <iostream>
#define in "royfloyd.in","r",stdin
#define out "royfloyd.out","w",stdout
#define nmax 105
#include <cstdio>
using namespace std;
int a[nmax][nmax],n;
void solve(){
int i,j,k;
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(i!=j && a[i][k] && a[k][j] &&(a[i][k]+a[k][j] < a[i][j] || !a[i][j])) a[i][j]=a[i][k]+a[k][j];
}
int main(){
int i,j;
freopen(in);
freopen(out);
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%d",&a[i][j]);
solve();
for(i=1;i<=n;i++){
for(j=1;j<=n;j++)
cout << a[i][j]<<' ';
cout <<'\n';
}
return 0;
}