Pagini recente » Cod sursa (job #2287583) | Istoria paginii runda/qwe/clasament | Cod sursa (job #2578743) | Istoria paginii runda/winners24 | Cod sursa (job #3041924)
#include <fstream>
using namespace std;
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int a[105][105];
int main(){
int n;
fin >> n;
int inf = (1 << 29);
for(int i =1; i <=n; i++){
for(int j = 1; j <= n; j++){
fin >> a[i][j];
if (a[i][j] == 0)
a[i][j] = inf;
}
a[i][i] = 0;
}
for(int k = 1; k <= n; k++)
for(int i = 1; i <= n; i++)
for(int j = 1; j <= n; ++j)
if (a[i][j] > a[i][k] + a[k][j])
a[i][j] = a[i][k] + a[k][j];
for(int i = 1; i <= n; i++ , fout << '\n')
for(int j = 1; j <= n; j++)
if (a[i][j] == inf)
fout << 0 << ' ';
else
fout << a[i][j] << ' ';
}