Pagini recente » Cod sursa (job #2787052) | Cod sursa (job #3172960) | Cod sursa (job #2403074) | Cod sursa (job #271709) | Cod sursa (job #1922958)
#include <fstream>
#include <iostream>
#include <vector>
#define maxn 101
#define INF 0x3f3f3f3f
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
int n;
int dist[maxn][maxn];
void RoyFloyd(){
for(int k = 1; k <= n; ++k){
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j){
if(dist[i][k] && dist[k][j] && dist[i][j] > dist[i][k] + dist[k][j]){
dist[i][j] = dist[i][k] + dist[k][j];
}
}
}
}
}
int main(){
f >> n;
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j)
f >> dist[i][j];
}
RoyFloyd();
for(int i = 1; i <= n; ++i){
for(int j = 1; j <= n; ++j)
g << dist[i][j] << ' ';
g << '\n';
}
}