Pagini recente » Cod sursa (job #1264817) | Cod sursa (job #3216943) | Cod sursa (job #2510067) | infoarena - comunitate informatica, concursuri de programare | Cod sursa (job #2424129)
#include <iostream>
#include <fstream>
using namespace std;
void Roy_Floyd(int a[105][105],int n)
{
int i,j,k;
for(k = 1;k <= n; k++)
for(i = 1;i <= n; i++)
for(j = 1;j <= n; j++)
if(a[i][j] > (a[i][k] + a[k][j]) || a[i][j] == 0)
{
if((a[i][k]!=0) && (a[k][j]!=0) && (i!=j))
a[i][j] = a[i][k] + a[k][j];
}
}
int main()
{
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int N,a[105][105];
int i,j;
fin >> N;
for(i = 1;i <= N; i++)
for(j = 1;j <= N; j++)
fin >> a[i][j];
Roy_Floyd(a,N);
for(i = 1;i <= N; i++)
{
for(j = 1;j <= N; j++)
fout << a[i][j] << " ";
fout << endl;
}
return 0;
}