Cod sursa(job #2418682)

Utilizator MortemPlaiasu Iulia-Silvia Mortem Data 5 mai 2019 19:22:57
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>

FILE * fin= fopen("royfloyd.in","r");
FILE * fout= fopen("royfloyd.out","w");

int v[105][105];

int main()
{
  int t;
  fscanf(fin,"%d",&t);
  for(int i=0;i<t;i++)
    for(int j=0;j<t;j++)
      fscanf(fin,"%d",&v[i][j]);
  for(int k=0;k<t;k++)
    for(int i=0;i<t;i++)
    {
      for(int j=0;j<t;j++)
      {
        if(i==j) continue;
        int sum = v[i][k]+v[k][j];
        if(v[i][k]!=0 && v[k][j]!=0 && (sum<v[i][j]||v[i][j]==0) )
          v[i][j]=sum;
      }
    }
  for(int i=0;i<t;i++)
  {
    for(int j=0;j<t;j++)
      fprintf(fout,"%d ",v[i][j]);
    fprintf(fout,"\n");
  }
}