Pagini recente » Cod sursa (job #2731472) | Cod sursa (job #2642598) | Cod sursa (job #1435832) | Cod sursa (job #1753386) | Cod sursa (job #341997)
Cod sursa(job #341997)
#include <iostream>
#include <fstream>
#include <cstdio>
#define REP(i,n) for((i)=0;(i)<(n);++(i))
using namespace std;
int N;
int A[100][100];
int main() {
freopen("royfloyd.in","r",stdin);
freopen("royfloyd.out","w",stdout);
int i,j,k;
scanf("%d",&N);
REP(i,N) REP(j,N) scanf("%d",&A[i][j]);
REP(k,N) REP(i,N) REP(j,N)
if (i != j)
if (A[i][k] && A[k][j])
if ((A[i][j] > A[i][k] + A[k][j]) || (!A[i][j]))
A[i][j] = A[i][k] + A[k][j];
REP(i,N) { REP(j,N) printf("%d ",A[i][j]);printf("\n");};
fclose(stdin);
fclose(stdout);
return 0;
}