Pagini recente » Cod sursa (job #2180127) | Cod sursa (job #2027255) | Cod sursa (job #2027262) | Cod sursa (job #2798207) | Cod sursa (job #862083)
Cod sursa(job #862083)
#include <fstream>
using namespace std;
ifstream in("royfloyd.in");
ofstream out("royfloyd.out");
int n, x[105][105];
void roy_floyd(){
for(int k=1; k<=n; k++)
for (int i=1; i<=n; i++)
for (int j=1; j<=n; j++)
if(x[i][k] && x[k][j] && (x[i][j] > x[i][k] + x[k][j] || !x[i][j]) && i!=j)
x[i][j] = x[i][k] + x[k][j];
}
int main(){
in>>n;
for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) in>>x[i][j];
roy_floyd();
for ( int i = 1; i <= n; i++) {
for ( int j = 1; j <= n; j++) out<<x[i][j]<<' ';
out<<'\n';
}
return 0;
}