Pagini recente » Cod sursa (job #2202056) | Monitorul de evaluare | Cod sursa (job #2444751) | Cod sursa (job #1246238) | Cod sursa (job #2300844)
#include <fstream>
using namespace std;
ifstream f ("royfloyd.in");
ofstream g ("royfloyd.out");
int a[105][105], n, i, j;
int k;
int main()
{
f >> n;
for ( i = 1 ; i <= n ; i++ )
for ( j = 1 ; j <= n ; j++ )
f >> a[i][j];
//r-f
for ( int k = 1 ; k <= n ; k++ )
{
for ( i = 1 ; i <= n ; i++)
{
for ( j = 1 ; j <= n ; j++)
{
if( a[k][j] && a[i][k] && ( a[i][j] > a[i][k]+a[[k][j] || !a[i][j] ) && i != j )
a[i][j] = a[i][k]+a[[k][j];
}
}
for ( i = 1 ; i <= n ; i++ )
{
for ( j = 1 ; j <= n ; j++ )
g << a[i][j] << " ";
g << "\n";
}
return 0;
}