Pagini recente » Cod sursa (job #1161568) | Cod sursa (job #1020247) | Cod sursa (job #2165598) | Cod sursa (job #1558716) | Cod sursa (job #1170485)
#include <fstream>
using namespace std;
int n,dist[105][105],best[105][105],i,j,k;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int main()
{
f>>n;
for (i=1; i<=n; i++)
for (j=1; j<=n; j++) {
f>>dist[i][j];
if (dist[i][j] == 0 and i != j)
dist[i][j] = 2000000;
}
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
best[i][j]=2000000;
for (k=1; k<=n; k++)
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
//if (dist[i][k]!=0 && dist[k][j]!=0)
best[i][j]=min(best[i][j],dist[i][k]+dist[k][j]);
for (i=1; i<=n; i++)
{
for (j=1; j<=n; j++)
if (best[i][j]==2000000)
g<<0<<' ';
else
g<<best[i][j]<<' ';
g<<'\n';
}
return 0;
}