Pagini recente » Cod sursa (job #3278574) | Cod sursa (job #2206396) | Cod sursa (job #2658468) | Cod sursa (job #2626904) | Cod sursa (job #688180)
Cod sursa(job #688180)
#include <iostream>
#include <fstream>
using namespace std;
#define NMAX 101
#define min(a, b) ((a) > (b) ? (a) : (b))
int Graf[NMAX][NMAX];
int N;
void citire();
void royfloyd();
void afisare();
int main()
{
citire();
royfloyd();
afisare();
}
void royfloyd()
{
for(int k=1; k<=N; k++)
for(int i=1; i<=N; i++)
for(int j=1; j<=N; j++)
if(Graf[i][k] && Graf[k][j] && (Graf[i][j] > Graf[i][k] + Graf[k][j]) && i != j)
Graf[i][j] = Graf[i][k] + Graf[k][j];
}
void afisare()
{
ofstream fout("royfloyd.out");
for(int i=1; i<=N; i++)
{
for(int j=1; j<=N; j++)
fout<<Graf[i][j]<<' ';
fout<<'\n';
}
fout.close();
}
void citire()
{
ifstream fin("royfloyd.in");
fin >> N;
for(int i=1; i<=N; i++)
for(int j=1; j<=N; j++)
fin >> Graf[i][j];
fin.close();
}