Pagini recente » Cod sursa (job #1402487) | Cod sursa (job #2069447) | Cod sursa (job #414745) | Cod sursa (job #3144040) | Cod sursa (job #3213751)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
using pii = pair<int,int>;
ifstream cin("royfloyd.in");
ofstream cout("royfloyd.out");
const int nmax = 1e2 + 1;
int c[nmax][nmax] , n;
signed main()
{
cin >> n;
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
{
cin >> c[i][j];
if(c[i][j] == 0 && i!=j) c[i][j] = 1e9;
}
}
for(int k = 1 ; k <= n ; ++k)
{
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
{
c[i][j] = min(c[i][j],c[i][k] + c[k][j]);
}
}
}
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j)
{
if(c[i][j] == 1e9) c[i][j] = 0;
}
}
for(int i = 1 ; i <= n ; ++i)
{
for(int j = 1 ; j <= n ; ++j) cout << c[i][j] << ' ';
cout << '\n';
}
return 0;
}