Nu aveti permisiuni pentru a descarca fisierul grader_test18.in
Cod sursa(job #2136799)
Utilizator | Data | 20 februarie 2018 11:17:31 | |
---|---|---|---|
Problema | Floyd-Warshall/Roy-Floyd | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.64 kb |
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
freopen("royfloyd.in", "r", stdin);
freopen("royfloyd.out", "w", stdout);
int n;
int a[110][110];
cin >> n;
for(int i = 0; i < n; ++i)
for(int j = 0; j < n; ++j)
cin >> a[i][j];
for(int i = 0; i < n; ++i)
for(int j = 0; j < n; ++j)
for(int k = 0; k < n; ++k)
if(a[i][k] + a[k][j] < a[i][j])
a[i][j] = a[i][k] + a[k][j];
for(int i = 0; i < n; ++i)
for(int j = 0; j < n; ++j)
cout << a[i][j] << " \n"[j == n - 1];
return 0;
}