Pagini recente » Cod sursa (job #3290458) | Cod sursa (job #2380583) | Cod sursa (job #3455) | Monitorul de evaluare | Cod sursa (job #143920)
Cod sursa(job #143920)
#include <stdio.h>
#define NMax 101
int n;
int dist[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 ", dist[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 ( dist[i][j] > dist[i][k] + dist[k][j] )
dist[i][j] = dist[i][k]+dist[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", &dist[i][j] );
}