Pagini recente » Cod sursa (job #1054142) | Rezultatele filtrării | Cod sursa (job #1054241) | Cod sursa (job #2127851) | Cod sursa (job #1053212)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstring>
#include <vector>
#include <bitset>
#include <cmath>
#define x first
#define y second
#define inf 20000000
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int N, A[105][105];
int main()
{
f>>N;
for (int i=1; i<=N; ++i)
for (int j=1; j<=N; ++j)
{
f>>A[i][j];
if (i!=j && !A[i][j]) A[i][j]=inf;
}
for (int k=1; k<=N; ++k)
for (int i=1; i<=N; ++i)
for (int j=1; j<=N; ++j)
if (A[i][j]>A[i][k]+A[k][j])
A[i][j]=A[i][k]+A[k][j];
for (int i=1; i<=N; ++i && g<<'\n')
for (int j=1; j<=N; ++j)
if (A[i][j]==inf) g<<0<<' ';
else g<<A[i][j]<<' ';
return 0;
}