Pagini recente » Cod sursa (job #1257990) | Cod sursa (job #1633798) | Cod sursa (job #2199874) | Cod sursa (job #2700840) | Cod sursa (job #668097)
Cod sursa(job #668097)
#include <cstdio>
using namespace std;
int n,cost[101][101];
int main()
{
freopen("royfloyd.in","rt",stdin);
freopen("royfloyd.out","wt",stdout);
scanf("%d",&n);
for(int i=1;i<=n;++i)
{
for(int j=1;j<=n;++j)
{
scanf("%d",&cost[i][j]);
}
}
for(int k=1;k<=n;++k)
{
for(int i=1;i<=n;++i)
{
for(int j=1;j<=n;++j)
{
if(cost[i][k] && cost[k][j] && i!=j)
{
if(cost[i][k]+cost[k][j]<=cost[i][j] || cost[i][j]==0)
{
cost[i][j]=cost[i][k]+cost[k][j];
}
}
}
}
}
for(int i=1;i<=n;++i)
{
for(int j=1;j<=n;++j)
{
printf("%d ",cost[i][j]);
}
printf("\n");
}
return 0;
}