Pagini recente » Cod sursa (job #2322905) | Cod sursa (job #693101) | Cod sursa (job #419240) | Cod sursa (job #1975666) | Cod sursa (job #3231693)
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
#include <climits>
#include <cmath>
#include <iomanip>
using namespace std;
int n, v[101][101];
ifstream fin("royfloyd.in"); /// royfloyd
ofstream fout("royfloyd.out");
int main()
{
fin>>n;
for(int i = 1; i<=n; i++)
for(int j = 1; j<=n; j++)
{
fin>>v[i][j];
if(v[i][j] == 0 && i != j)
v[i][j] = INT_MAX/2;
}
for(int i = 1; i<=n; i++)
{
for(int j = 1; j<=n; j++)
{
for(int k = 1; k<=n; k++)
{
if(v[j][k] > v[j][i] + v[i][k])
{
v[j][k] = v[j][i]+v[i][k];
}
}
}
}
for(int i = 1; i<=n; i++)
{
for(int j = 1; j<=n; j++)
if(v[i][j] == INT_MAX/2)
fout<<0<<' ';
else fout<<v[i][j]<<' ';
fout<<'\n';
}
}