Pagini recente » Cod sursa (job #984087) | Cod sursa (job #1971720) | Cod sursa (job #1546157) | Cod sursa (job #123727) | Cod sursa (job #2036656)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
const int inf = 1500;
int main()
{
int vertices;
fin>>vertices;
vector<vector<int>> dist(vertices,vector <int> (vertices));
for(int i=0; i<vertices; i++)
for(int j=0; j<vertices; j++)
{
fin>>dist[i][j];
if(dist[i][j]==0 && i!=j)
dist[i][j]=inf;
}
for(int k=0;k<vertices;k++)
for(int i=0;i<vertices;i++)
for(int j=0;j<vertices;j++)
dist[i][j]=min(dist[i][j],dist[i][k]+dist[k][j]);
for(int i=0;i<vertices;i++)
{
for(int j=0;j<vertices;j++)
if(dist[i][j]==inf)
fout<<0<<' ';
else
fout<<dist[i][j]<<' ';
fout<<'\n';
}
return 0;
}