Cod sursa(job #2373840)

Utilizator Teo_1101Mititelu Teodor Teo_1101 Data 7 martie 2019 15:28:42
Problema Floyd-Warshall/Roy-Floyd Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");

const int NMAX = 802;
const int INF = ( 1 << 30) - 1;
int N;
int mat[NMAX][NMAX];

void Read()
{

    fin>>N;

    for(int i=1;i<=N;++i)
        for(int j=1;j<=N;++j)
    {
        fin>>mat[i][j];
        if(!mat[i][j] && i != j )
            mat[i][j]=INF;
    }

    fin.close();
}
void RF()
{
    for(int k=1;k<=N;++k)
    for(int i=1;i<=N;++i)
        for(int j=1;j<=N;++j)

        if(mat[i][j]>mat[i][k]+mat[k][j])mat[i][j]=mat[i][k]+mat[k][j];
        for(int i=1;i<=N;++i)
    {
        for(int j=1;j<=N;++j)
            fout<<mat[i][j]<<" ";
        fout<<"\n";
    }
}
int main()
{
    Read();
    RF();
    return 0;
}