Pagini recente » Cod sursa (job #2052170) | Cod sursa (job #644554) | Cod sursa (job #817239) | Cod sursa (job #2364514) | Cod sursa (job #1458066)
#include <stdio.h>
#include <vector>
#include <iostream>
#include <fstream>
#define MAX 100
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int N;
vector <vector<int> > tpl;
//vector< vector<int> > mindist;
void read(){
in >> N;
tpl.resize(N+1, vector<int>(N+1));
//mindist.resize(N+1);
int x;
for(int i = 1; i <= N; ++i){
for(int j = 1; j <= N; ++j){
in >> x;
tpl[i][j] = x;
}
}
}
void RoyFloyd(){
for(int k = 1; k <= N; ++k){
for(int i = 1; i <= N; ++i){
for(int j = 1; j <=N; ++j){
if(tpl[i][j] > tpl[i][k] + tpl[k][j])
tpl[i][j] = tpl[i][k] + tpl[k][j];
}
}
}
}
int main(){
read();
RoyFloyd();
for(int i = 1; i <= N; ++i){
for(int j = 1; j <= N; ++j){
out << tpl[i][j] << " ";
}
out << "\n";
}
}