Pagini recente » Cod sursa (job #2574817) | Cod sursa (job #2590663) | Cod sursa (job #182559) | Cod sursa (job #1781980) | Cod sursa (job #344472)
Cod sursa(job #344472)
#include<fstream>
#define dmax 103
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int n,mat[dmax][dmax];
void royfloyd()
{ int i,j,k;
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if (mat[i][k] && mat[k][j] && ( (mat[i][j] > mat[i][k] + mat[k][j]) || (!mat[i][j] && (i != j)) ) )
mat[i][j]=mat[i][k]+mat[k][j];
}
int main()
{ int i,j;
in>>n;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
in>>mat[i][j];
in.close();
royfloyd();
for(i=1;i<=n;i++)
{ for(j=1;j<=n;j++)
out<<mat[i][j]<<" ";
out<<'\n';
}
out.close();
return 0;
}