Pagini recente » Istoria paginii utilizator/cleosenpai | Istoria paginii utilizator/licaana | Monitorul de evaluare | Statistici Blidar Rares (BlidarRares86) | Cod sursa (job #2425392)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream f ("royfloyd.in");
ofstream g ("royfloyd.out");
int main()
{
int n,cost,inf=10000;
f>>n;
int d[100][100];
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
{
f>>cost;
if (i==j)
d[i][j]=0;
else if (cost>0)
d[i][j]=cost;//exista muchie de la i la j
else
d[i][j]=inf;
}
for (int k=0; k<n; k++)
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
d[i][j]=min(d[i][j],d[i][k]+d[k][j]);
for (int i=0; i<n; i++)
{
for (int j=0; j<n; j++)
g<<d[i][j]<<" ";
g<<"\n";
}
}