Pagini recente » Cod sursa (job #1049048) | Cod sursa (job #2017796) | Cod sursa (job #313030) | Cod sursa (job #3240090) | Cod sursa (job #589890)
Cod sursa(job #589890)
#include <fstream>
#define inf 21000000
using namespace std;
int n;
int a[100][100];
int main()
{
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int i1,i2,i3;
in>>n;
for(i1=0;i1<n;i1++)
for(i2=0;i2<n;i2++)
{
in>>a[i1][i2];
if(!a[i1][i2])
if(i1!=i2)
a[i1][i2] = inf;
}
for(i3=0;i3<n;i3++)
for(i1=0;i1<n;i1++)
for(i2=0;i2<n;i2++)
if(a[i1][i3] + a[i3][i2] < a[i1][i2])
a[i1][i2] = a[i1][i3] + a[i3][i2];
for(i1=0;i1<n;i1++)
{
for(i2=0;i2<n;i2++)
if(a[i1][i2] == inf)
out<<'0 ';
else
out<<a[i1][i2]<<' ';
out<<'\n';
}
in.close();
out.close();
return 0;
}