Pagini recente » Cod sursa (job #1682430) | Cod sursa (job #849077) | Cod sursa (job #2590951) | Cod sursa (job #2703527) | Cod sursa (job #1645714)
#include <fstream>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
const int Nmax=103;
int n,a[Nmax][Nmax];
int main()
{
fin>>n;
for ( int i=1 ; i<=n ; i++ )
for ( int j=1 ; j<=n ; j++ )
fin>>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 ( a[i][k] && a[k][j] && (a[i][j] > a[i][k] + a[k][j] || !a[i][j]) && i != j) a[i][j] = a[i][k] + a[k][j];
for ( int i=1 ; i<=n ; i++ ){
for ( int j=1 ; j<=n ; j++ )
fout<<a[i][j]<<' ';
fout<<'\n';
}
}