Pagini recente » Istoria paginii problema/betasah | Cod sursa (job #2009104) | Statistici Cazacu Cristian - Gabriel (CristianCazacu) | Rating Cioltan Andrei (andy1207) | Cod sursa (job #352871)
Cod sursa(job #352871)
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
#define INF 0x0F0F0F0F
#define MAXN 105
int A[MAXN][MAXN],N;
int royfloyd()
{
int i,j,k;
for (k=0;k<N;k++)
for (i=0;i<N;i++)
for(j=0;j<N;j++)
A[i][j] = min(A[i][j],A[i][k] + A[k][j]);
}
int main ()
{
int i,j,k;
freopen("royfloyd.in","rt",stdin);
// freopen("royfloyd.out","wt",stdout);
memset(A,0x0F,sizeof(A));
scanf("%d",&N);
for (i=0;i<N;i++)
for(j=0;j<N;j++)
{
scanf("%d",A[i]+j);
if (!A[i][j])
A[i][j] = INF;
}
royfloyd();
for (i=0;i<N;i++)
{
for(j=0;j<N;j++)
{
if (A[i][j] == INF || i == j)
A[i][j] = 0;
printf("%d ",A[i][j]);
}
printf("\n");
}
return 0;
}