Cod sursa(job #3316742)

Utilizator domdiridomdidomDominik domdiridomdidom Data 20 octombrie 2025 14:35:28
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.86 kb
#include <fstream>

int main(){
    std::ifstream bem("royfloyd.in");
    std::ofstream kim("royfloyd.out");
    int n;
    bem >> n;
    int ** matriksz = new int * [n];
    for(int i = 0; i < n; i++)
        matriksz[i] = new int [n];
    for(int i = 0; i < n; i++)
        for(int j = 0; j < n; j++)
            bem >> matriksz[i][j];
    for(int k = 0; k < n; k++)
        for(int i = 0; i < n; i++)
            for(int j = 0; j < n; j++)
                if(matriksz[i][j] > matriksz[i][k] + matriksz[k][j])
                    matriksz[i][j] = matriksz[i][k] + matriksz[k][j];
    for(int i = 0; i < n; i++){
        for(int j = 0; j < n; j++)
            kim << matriksz[i][j] << ' ';
        kim << '\n';
    }
    for(int i = 0; i < n; i++)
        delete [] matriksz[i];
    delete [] matriksz;
    bem.close();
    kim.close();
    return 0;
}