Cod sursa(job #2375674)

Utilizator SirVSbiVidam Szablocs SirVSbi Data 8 martie 2019 11:24:35
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <iostream>
#include <fstream>
using namespace std;

int main(){
    ifstream be("royfloyd.in");
    ofstream ki("royfloyd.out");


    int n;
    be >> n;
    int graph[n][n];
    int rf[n][n];
    for(int i = 0; i < n; i++){
        for(int j = 0; j < n; j++){
            be >> graph[i][j];
            rf[i][j] = graph[i][j];
        }
    }


    //here comes the Floyd-Warshall
    for(int k = 0; k < n; k++){
        for(int i = 0; i < n; i++){
            for(int j= 0; j < n; j++){
                if(rf[i][k] + rf[k][j] < rf[i][j])
                    rf[i][j] = rf[i][k] + rf[k][j];
            }
        }
    }

    for(int i = 0; i < n; i++){
        for(int j = 0; j < n; j++){
            ki << rf[i][j] << " ";
        }
        ki << endl;
    }



}