Pagini recente » Cod sursa (job #1980576) | Cod sursa (job #1093505) | Cod sursa (job #1256801) | Cod sursa (job #1757260) | Cod sursa (job #150312)
Cod sursa(job #150312)
//#include "stdafx.h"
#include "cstdio"
#define inf 0x3f3f3f3f
#define fin "royfloyd.in"
#define fout "royfloyd.out"
using namespace std;
int ad[126][126],n,m;
void citire()
{
freopen(fin,"r",stdin);
scanf("%d",&n);
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
scanf("%d",&ad[i][j]);
fclose(stdin);
}
void roy_floyd()
{
for (int k=1;k<=n;k++)
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
if (ad[i][j] > ad[i][k]+ad[k][j] && i!=j)
ad[i][j]=ad[i][k]+ad[k][j];
}
void scrie(int ad[126][126])
{
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
printf("%d ",ad[i][j]);
printf("\n");
}
}
void finish()
{
freopen(fout,"w",stdout);
scrie(ad);
fclose(stdout);
}
int main()
{
citire();
roy_floyd();
finish();
return 0;
}