Cod sursa(job #2943141)

Utilizator Remus.RughinisRemus Rughinis Remus.Rughinis Data 20 noiembrie 2022 17:03:08
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
#define MAXN 100
#define MAXVAL 1000000

using namespace std;
int r[MAXN][MAXN];

int main(){
  int n, i, j, k;

  ifstream fin ("royfloyd.in");
  fin >> n;
  for(i = 0; i < n; i ++){
    for(j = 0; j < n; j ++){
      fin >> r[i][j];
    }
  }
  fin.close();

  for(k = 0; k < n; k ++){
    for(i = 0; i < n; i ++){
      for(j = 0; j < n; j ++){
        if(r[i][j] > r[i][k] + r[k][j])
          r[i][j] = r[i][k] + r[k][j];
      }
    }
  }

  ofstream fout ("royfloyd.out");
  for(i = 0; i < n; i ++){
    for(j = 0; j < n; j ++){
      fout << r[i][j] << ' ';
    }
    fout << endl;
  }
  fout.close();

  return 0;
}