Cod sursa(job #2439315)

Utilizator CuriosaurusIonita Lucian Andrei Curiosaurus Data 15 iulie 2019 17:23:16
Problema Floyd-Warshall/Roy-Floyd Scor 50
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
    FILE *read = fopen("royfloyd.in", "r");
    FILE *write = fopen("royfloyd.out", "w");

    int n, a[100][100], i, j, k;
    fscanf(read, "%d", &n);
    for(i = 0; i < n; i++)
        for(j = 0; j < n; j++)
        fscanf(read, "%d", &a[i][j]);
    for(i = 0; i < n; i++)
        for(j = 0; j < n; j++)
            for(k = 0; k < n; k++)
                if(a[j][k] > a[j][i] + a[i][k]) a[j][k] = a[j][i] + a[i][k];
    for(i = 0; i < n; i++)
    {
        for(j = 0; j < n; j++)
            fprintf(write, "%d ", a[i][j]);
        fprintf(write, "\n");
    }

    fclose(read);
    fclose(write);
    return 0;
}