Cod sursa(job #3366421)

Utilizator irina_opreaIrina Oprea irina_oprea Data 1 octombrie 2026 14:27:49
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>

using namespace std;

const int NMAX = 256+10;

long long dist[NMAX][NMAX];

int main()
{
    ifstream cin ("royfloyd.in");
    ofstream cout ("royfloyd.out");

    int n;
    cin >> n;
    for (int i=1; i<=n; i++)
    {
        for (int j=1; j<=n; j++)
        {
            cin >> dist[i][j];
        }
    }
    for (int k=1; k<=n; k++)
    {
        for (int i=1; i<=n; i++)
        {
            for (int j=1; j<=n; j++)
            {
                if (dist[i][j] > dist[i][k]+dist[k][j])
                {
                    dist[i][j] = dist[i][k]+dist[k][j];
                }
            }
        }
    }
    for (int i=1; i<=n; i++)
    {
        for (int j=1; j<=n; j++)
        {
            cout << dist[i][j] << " ";
        }
        cout << '\n';
    }
    return 0;
}