Pagini recente » Cod sursa (job #3307130) | Cod sursa (job #3307283) | Cod sursa (job #3330639) | Borderou de evaluare (job #3303923) | Cod sursa (job #2429699)
#include <iostream>
#include <fstream>
using namespace std;
const int NMax = (1<<30);
int main()
{
ifstream f("royfloyd.in");
int n, nodTrecere, nodPornire, nodDestinatie;
f>>n;
int m[105][105];
for (int i=1; i<=n; i++)
for (int j=1; j<=n; j++)
{
f>>m[i][j];
// if (!(i==j) && (m[i][j]==0))
// m[i][j]=NMax;
}
for (nodTrecere=1; nodTrecere<=n; nodTrecere++)
for (nodPornire=1; nodPornire<=n; nodPornire++)
for (nodDestinatie=1; nodDestinatie<=n; nodDestinatie++)
{
if (m[nodPornire][nodDestinatie]>m[nodPornire][nodTrecere]+m[nodTrecere][nodDestinatie])
if ((m[nodPornire][nodTrecere])&&(m[nodTrecere][nodDestinatie]))
m[nodPornire][nodDestinatie]=m[nodPornire][nodTrecere]+m[nodTrecere][nodDestinatie];
}
ofstream g("royfloyd.out");
for (int i=1; i<=n; i++)
{
for (int j=1; j<=n; j++)
g<<m[i][j]<<" ";
g<<"\n";
}
return 0;
}