Pagini recente » Cod sursa (job #768740) | Cod sursa (job #1551603) | Cod sursa (job #84078) | Cod sursa (job #1868894) | Cod sursa (job #2528820)
#include <fstream>
using namespace std;
ifstream in;
ofstream out;
int n;
void roy_floyd(int a[][101])
{
for(int plug=1;plug<=n;plug++)
{
for(int beg=1;beg<=n;beg++)
for(int end=1;end <= n; end++)
{
if((a[beg][plug] and a[plug][end] and a[beg][end]>a[beg][plug]+a[plug][end]) or (beg!=end and !a[beg][end]))
a[beg][end]=a[beg][plug]+a[plug][end];
}
}
}
int a[101][101];
int main()
{
in.open("royfloyd.in");
out.open("royfloyd.out");
in>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
in>>a[i][j];
}
roy_floyd(a);
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
out<<a[i][j]<<" ";
out<<endl;
}
return 0;
}