Pagini recente » Cod sursa (job #1298227) | Cod sursa (job #736899) | Cod sursa (job #633210) | Cod sursa (job #41132) | Cod sursa (job #411767)
Cod sursa(job #411767)
#include <stdio.h>
#define inf 0x3f3f3f
#define size 105
using namespace std;
int a[size][size];
int rez[size][size];
int n;
void citire()
{
scanf ("%d",&n);
for (int i=0;i<n;i++)
for (int j=0;j<n;j++)
{
scanf ("%d",&a[i][j]);
if(a[i][j]==0 && i!=j)
a[i][j]=inf;
}
}
int min(int a,int b)
{
return a<b?a:b;
}
void roy()
{
for (int i=0;i<n;i++)
for (int j=0;j<n;j++)
for (int k=0;k<n;k++)
a[i][j]=min(a[i][j],a[i][k]+a[k][j]);
}
void afish()
{
for (int i=0;i<n;i++)
{
for (int j=0;j<n;j++)
printf("%d ",a[i][j]==inf?0:a[i][j]);
printf("\n");
}
}
int main ()
{
freopen ("royfloyd.in","r",stdin);
freopen ("royfloyd.out","w",stdout);
citire();
roy();
afish();
return 0;
}