Pagini recente » Cod sursa (job #1603758) | Cod sursa (job #2724304) | Cod sursa (job #1902560) | Cod sursa (job #489415) | Cod sursa (job #2229182)
#include <bits/stdc++.h>
#define Nmax 1005
using namespace std;
int n, i, j, c[105][105], t[105][105];
void royfloyd()
{
for(int k = 1;k <= n;k++)
for(int i = 1;i <= n;i++)
for(int j = 1;j <= n;j++)
if(c[i][k] != Nmax && c[k][j] != Nmax && c[i][j] > c[i][k] + c[k][j] && i != j)
{
c[i][j] = c[i][k] + c[k][j];
t[i][j] = t[k][j];
}
}
int main()
{
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
f >> n;
for(i = 1;i <= n;i++)
for(j = 1;j <= n;j++)
{
f >> c[i][j];
if(c[i][j] == 0)c[i][j] = Nmax;
}
royfloyd();
for(i = 1;i <= n;i++)
{
for(j = 1;j <= n;j++)
if(c[i][j] == Nmax)g << "0" << " ";
else g << c[i][j] << " ";
g << "\n";
}
return 0;
}