Cod sursa(job #2683374)
| Utilizator | Data | 11 decembrie 2020 08:56:02 | |
|---|---|---|---|
| Problema | Floyd-Warshall/Roy-Floyd | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.62 kb |
#include <bits/stdc++.h>
std::ifstream fin("royfloyd.in");
std::ofstream fout("royfloyd.out");
int n, ponderi[101][101];
int main()
{
int i, j, k;
fin >> n;
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
fin >> ponderi[i][j];
for(k = 0; k < n; k++)
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
if(ponderi[i][k] + ponderi[k][j] < ponderi[i][j])
ponderi[i][j] = ponderi[i][k] + ponderi[k][j];
for(i = 0; i < n; i++){
for(j = 0; j < n; j++)
fout << ponderi[i][j] << " ";
fout << '\n';
}
return 0;
}