Pagini recente » Cod sursa (job #2745366) | Cod sursa (job #1648214) | Cod sursa (job #644821) | Cod sursa (job #2349438) | Cod sursa (job #997597)
Cod sursa(job #997597)
#include <fstream>
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int n,i,j,k,a[101][101];
void read()
{
f>>n;
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
f>>a[i][j];
}
void solve()
{
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
for (k=1;k<=n;k++)
if (a[i][j] && a[j][k] && (a[i][j]+a[j][k]<a[i][k] || !a[i][k]) && i!=k)
a[i][k]=a[i][j]+a[j][k];
}
int afiseaza()
{
for (i=1;i<=n;i++)
{
for (j=1;j<=n;j++)
if (i==j)g<<"0 ";
else g<<a[i][j]<<' ';
g<<'\n';
}
}
int main()
{
read();
solve();
afiseaza();
f.close();
g.close();
}