Cod sursa(job #2658963)

Utilizator Iulia25Hosu Iulia Iulia25 Data 15 octombrie 2020 16:47:21
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.54 kb
#include <fstream>

using namespace std;

ifstream cin ("royfloyd.in");
ofstream cout ("royfloyd.out");
int a[105][105];

int main()  {
  int n;
  cin>>n;
  int k, i, j;
  for(i=1;i<=n;i++)
    for(j=1;j<=n;j++)
      {
      cin>>a[i][j];
      }
  for(k=1;k<=n;k++)
   for(i=1;i<=n;i++)
     for(j=1;j<=n;j++)
     {
     if(a[i][k]!=0 && a[k][j]!=0)
     if(a[i][k]+a[k][j]<a[i][j] || a[i][j] == 0 && i != j) a[i][j]=a[i][k]+a[k][j];
     }
    for(i=1;i<=n;i++) {
     for(j=1;j<=n;j++)
      cout<<a[i][j]<<" ";
      cout<<'\n';
    }
	return 0;
}