Cod sursa(job #3320840)

Utilizator Dv1de29Barbu David Florian Dv1de29 Data 7 noiembrie 2025 15:32:05
Problema Floyd-Warshall/Roy-Floyd Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.84 kb
#include <fstream>
#include <vector>
#include <queue>

using namespace std;

ifstream fin("bellmanford.in");
ofstream fout("bellmanford.out");

vector<vector<int>> a;


void floyd(vector<vector<int>>& a){
    int n = a.size();

    for ( int k = 0; k < n; k++ ){
        for ( int i = 0; i < n; i++ ){
            for ( int j = 0; j < n; j++ ){
                a[i][j] = min(a[i][j], a[i][k] + a[k][j]);
            }
        }
    }
}

int main() {
    int N;

    fin >> N;

    a.resize(N, vector<int>(N));

    for ( int i = 0; i < N; i++ ){
        for ( int j = 0; j < N; j++ ){
            fin >> a[i][j];
        }
    }

    floyd(a);

    for ( int i = 0; i < N; i++ ){
        for ( int j = 0; j < N; j++ ){
            fout << a[i][j] << ' ';
        }
        fout << '\n';
    }

    return 0;
}