Cod sursa(job #2947837)

Utilizator albertaizicAizic Albert albertaizic Data 26 noiembrie 2022 19:38:26
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <stdio.h>
#include <vector>
#include <algorithm>
using namespace std;
const int MAX_N=100;

int d[MAX_N][MAX_N];

int main(){
  FILE *fin,*fout;
  int n,i,j,k;
  fin=fopen("royfloyd.in","r");
  fout=fopen("royfloyd.out","w");
  fscanf(fin,"%d",&n);

  for(i=0;i<n;i++){
    for(j=0;j<n;j++){
      fscanf(fin,"%d",&d[i][j]);
    }
  }

  for(k=0;k<n;k++)
    for(i=0;i<n;i++)
      for(j=0;j<n;j++)
        d[i][j] = min(d[i][j],d[i][k]+d[k][j]);

  for(i=0;i<n;i++){
    for(j=0;j<n;j++){
      fprintf(fout,"%d ", d[i][j]);
    }
    fprintf(fout,"\n");
  }


  fclose(fin);
  fclose(fout);
  return 0;
}