Pagini recente » Cod sursa (job #1885423) | Cod sursa (job #3283317) | Cod sursa (job #1256855) | Cod sursa (job #1500362) | Cod sursa (job #1843961)
#include <fstream>
#include <iostream>
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int n;
bool ok;
int v[100][100],c[100][100];
int main()
{
in>>n;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
in>>v[i][j];
ok=true;
//while(ok)
//{
ok=false;
for(int k=0; k<n; k++)
{
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
if((v[i][j]>v[i][k]+v[k][j]||(v[i][j]==0&&i!=j))&&v[i][k]!=0&&v[k][j]!=0)
{
v[i][j]=v[i][k]+v[k][j];
ok=true;
}
}
}
}
//}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
out<<v[i][j]<<' ';
out<<'\n';
}
}