Pagini recente » Cod sursa (job #2309202) | Cod sursa (job #2616626)
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const int mxN=101;
int n, cost[mxN][mxN];
void floyd ()
{
for (int k=0; k<n; k++)
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
if (k!=i && k!=j && i!=j)
if (cost[i][j]>(cost[i][k]+cost[k][j]) || cost[i][j]==0)
cost[i][j]=cost[i][k]+cost[k][j];
}
int main()
{
//ifstream cin("royfloyd.in");
//ofstream cout("royfloyd.out");
ios_base::sync_with_stdio(false);
cin.tie(0);
cin>>n;
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
cin>>cost[i][j];
//solve
floyd();
//write
for (int i=0; i<n; i++)
{
for (int j=0; j<n; j++)
cout<<cost[i][j]<<" ";
cout<<"\n";
}
return 0;
}