Pagini recente » Cod sursa (job #79807) | Cod sursa (job #2197535) | Cod sursa (job #2787975) | Cod sursa (job #1978176) | Cod sursa (job #1698057)
#include<fstream>
#include<algorithm>
#include<stack>
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int A[110][110];
int main()
{
int N;
in >> N;
for (int i = 1;i <= N;++i)
for (int j = 1;j <= N;++j)
in >> A[i][j];
for (int k = 1;k <= N;++k)
for (int i = 1;i <= N;++i)
for (int j = 1;j <= N;++j)
if (i!=j && (A[i][k] + A[k][j] < A[i][j] && A[i][k] != 0 && A[k][j] != 0 || (A[i][k] != 0 && A[k][j]!=0 && A[i][j]==0)))
A[i][j] = A[i][k] + A[k][j];
for (int i = 1;i <= N;++i)
{
for (int j = 1;j <= N;++j)
out << A[i][j] << " ";
out << '\n';
}
return 0;
}