Pagini recente » ordonare-prea-usor | Cod sursa (job #3038948) | Cod sursa (job #635864) | Cod sursa (job #1692824) | Cod sursa (job #1556795)
#include <iostream>
#include <stdio.h>
#include <limits.h>
using namespace std;
int N;
int v[100][100];
int dist[100][100];
void printMatrix (const int matrix[][100], int v);
void initDist(const int * dist , int len);
int main(){
FILE * inFile = fopen("royfloyd.in" , "r");
FILE * outFile = fopen("royfloyd.out" , "w+");
fscanf(inFile , "%d\n", &N);
for(int i = 0 ; i < N ; ++i){
for (int j = 0 ; j < N ; j++){
fscanf(inFile , "%d" , &v[i][j]);
}
}
for (int k = 0 ; k < N ; ++k){
for (int i = 0 ; i < N ; ++i){
for (int j = 0 ; j < N ; ++j){
if(v[i][j] > v[i][k] + v[k][j])
v[i][j] = v[i][k] + v[k][j];
}
}
}
for(int i = 0 ; i < N ; ++i){
for(int j = 0 ; j < N ; ++j){
fprintf(outFile , "%d " , v[i][j]);
}
fprintf(outFile , "\n");
}
// printMatrix(v , N);
return 0 ;
}
void printMatrix(const int matrix[][100] , int len){
for (int i = 0 ; i < len; i++){
for(int j = 0 ; j < len ; j++){
cout << matrix [i][j] << " ";
}
cout << "\n";
}
}