Cod sursa(job #3278449)

Utilizator PitigoiOlteanEmanuelPitigoi Oltean Emanuel PitigoiOlteanEmanuel Data 19 februarie 2025 21:02:01
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <fstream>
#include <algorithm>
#include <map>
#include <cmath>


using namespace std;
ifstream cin("royfloyd.in");
ofstream cout("royfloyd.out");
int v[105][105];
int n;
int main()
{
   cin>>n;
   for(int i=1;i<=n;i++)
   {
       for(int k=1;k<=n;k++)
       {
            cin>>v[i][k];
       }

   }




   for(int j=1;j<=n;j++)
   {
       for(int i=1;i<=n;i++)
       {
           for(int k=1;k<=n;k++)
           {
               int sum=v[i][j]+v[j][k];

               if(v[i][j]==0 || v[j][k]==0)
               {
                   sum=999999;
               }

               v[i][k]=min(v[i][k],  sum );
           }
       }
   }


    for(int i=1;i<=n;i++)
   {
       for(int k=1;k<=n;k++)
       {
            cout<<v[i][k]<<" ";
       }
       cout<<'\n';

   }

    return 0;
}






//manuscrisul voinici