Pagini recente » Cod sursa (job #1322098) | Cod sursa (job #745126) | Cod sursa (job #468028) | Cod sursa (job #2455913) | Cod sursa (job #1197650)
#include <cstdio>
#define InF 1000000
using namespace std;
int a[109][109],i,j,k,n;
int S(int x)
{
if(x==InF) return 0;
return x;
}
int main()
{
freopen("royfloyd.in","r",stdin);
freopen("royfloyd.out","w",stdout);
scanf("%d",&n);
for(i=1; i<=n; ++i)
for(j=1; j<=n; ++j)
{
scanf("%d",&a[i][j]);
if(a[i][j]==0) a[i][j]=InF;
}
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][j]=a[i][k]+a[k][j];
}
for(i=1; i<=n; ++i)
for(j=1; j<=n; ++j)
if(j<n)
printf("%d ",S(a[i][j]));
else printf("%d\n",S(a[i][j]));
return 0;
}