Pagini recente » Cod sursa (job #2693549) | Cod sursa (job #1530775) | Cod sursa (job #2384354) | Cod sursa (job #1097961) | Cod sursa (job #694048)
Cod sursa(job #694048)
#include <algorithm>
#include <stdio.h>
using namespace std ;
int a[101][101] ;
int minim(int A,int B) {
if (A<B) return A ;
return B ;
}
int main() {
freopen ("royfloyd.in","r",stdin) ;
freopen ("royfloyd.out","w",stdout) ;
int n ;
scanf ("%d" , &n) ;
for(int i=1; i<=n; ++i) {
for(int j=1 ; j<=n ; ++j) {
scanf("%d" , &a[i][j]) ;
}
}
for (int k=1;k<=n;++k) {
for (int i=1;i<=n;++i) {
for (int j=1 ; j<=n ; ++j) {
if (i==j) {
a[i][j]==0 ;
}
else {
if (a[i][j]!=0)
a[i][j]=minim(a[i][j],a[i][k]+a[k][j]) ;
else a[i][j]=a[i][k]+a[k][j] ;
}
}
}
}
for (int i=1;i<=n ; ++i) {
for(int j=1 ; j<=n ; ++j) {
printf ("%d " , a[i][j] ) ;
}
printf ("\n");
}
return 0 ;
}