Pagini recente » Profil stay_awake77 | Istoria paginii preoni-2008/runda-1/10 | Cod sursa (job #2070914) | Cod sursa (job #175034) | Cod sursa (job #1738372)
#include <fstream>
#include <climits>
using namespace std;
#define N 100
int matrix[N][N];
int n;
int min(int a,int b) {
return (a<=b?a:b);
}
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
void RoyFloyd() {
for (int k=0;k<n;k++) {
for (int i=0;i<n;i++) {
for (int j=0;j<n;j++) {
if (i!=j && i!=k && k!=j && matrix[i][j]>matrix[i][k]+matrix[k][j]) {
matrix[i][j]=matrix[i][k]+matrix[k][j];
}
}
}
}
}
int main() {
in>>n;
for (int i=0;i<n;i++) {
for (int j=0;j<n;j++) {
in>>matrix[i][j];
}
}
RoyFloyd();
for (int i=0;i<n;i++) {
for (int j=0;j<n;j++) {
out<<matrix[i][j]<<" ";
}
out<<"\n";
}
return 0;
}