Pagini recente » Cod sursa (job #1934139) | Cod sursa (job #2496286) | Cod sursa (job #342328) | Cod sursa (job #2816594) | Cod sursa (job #1815663)
#include <fstream>
#include <limits.h>
using namespace std;
#define Nmax 100
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int n, a[Nmax][Nmax];
void RoyFloyd()
{
int i, j, k;
for(k = 0; k < n; k++)
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
if(a[i][j] > a[i][k] + a[k][j])
a[i][j] = a[i][k] + a[k][j];
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
{
if(a[i][j] == INT_MAX)
a[i][j] = 0;
g << a[i][j] << " ";
}
g << "\n";
}
}
int main()
{
f >> n;
int i, j;
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
{
f >> a[i][j];
if(a[i][j] == 0 && i != j)
a[i][j] = INT_MAX;
}
RoyFloyd();
return 0;
}