Pagini recente » Cod sursa (job #671682) | Cod sursa (job #2955317) | Cod sursa (job #3259431) | Cod sursa (job #29558) | Cod sursa (job #143935)
Cod sursa(job #143935)
#include <stdio.h>
#define NMax 101
int n;
int a[NMax][NMax];
void citire();
void rez();
void afis();
int main()
{
citire();
rez();
afis();
return 0;
}
void afis()
{
int i, j;
for (i=1; i<=n; i++)
{
for (j=1; j<=n; j++)
printf( "%d ", a[i][j] );
printf( "\n" );
}
}
void rez()
{
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][k] && a[k][j] && (a[i][j] > a[i][k] + a[k][j] || !a[i][j]) && i != j)
a[i][j] = a[i][k] + a[k][j];
}
void citire()
{
int i, j;
freopen( "royfloyd.in", "rt", stdin );
freopen( "royfloyd.out", "wt" , stdout );
scanf( "%d", &n );
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
scanf( "%d", &a[i][j] );
}