Pagini recente » Cod sursa (job #965020) | Cod sursa (job #1425915) | Cod sursa (job #1778816) | Cod sursa (job #2452656) | Cod sursa (job #2812666)
#include <iostream>
#include <fstream>
using namespace std;
fstream f("royfloyd.in");
ofstream g("royfloyd.out");
void roy_floyd(int dist[][102],int n)
{
for(int k = 1; k<=n; k++)
for(int i=1;i<=n;i++)
for(int j=1; j<=n;j++)
if(dist[i][k] && dist[k][j]&& (dist[i][j]> dist[i][k] + dist[k][j]|| !dist[i][j]) && i!=j)
dist[i][j] = dist[i][k] + dist[k][j];
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
g<<dist[i][j]<<" ";
g<<"\n";
}
}
int main()
{
int n;
int pondere[102][102];
f>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
f>>pondere[i][j];
f.close();
roy_floyd(pondere,n);
return 0;
}