Pagini recente » Cod sursa (job #3290479) | clasament-arhiva-educationala | Cod sursa (job #3291469) | Cod sursa (job #3293369) | Cod sursa (job #3292971)
#include <fstream>
#include <climits>
#define INF INT_MAX
using namespace std;
ifstream cin("royfloyd.in");
ofstream cout("royfloyd.out");
int d[101][101];
int rf[101][101];
int main() {
int n;
cin >> n;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
cin >> d[i][j];
if(!d[i][j])
rf[i][j] = INF;
else
rf[i][j] = d[i][j];
}
for(int k=1;k<=n;k++)
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
if(rf[i][j]>d[i][k]+d[k][j])
rf[i][j]=d[i][k]+d[k][j];
for(int i=1;i<=n;i++,cout << '\n')
for(int j=1;j<=n;j++)
if(d[i][j]==INF)
cout << 0 << ' ';
else
cout << rf[i][j] << ' ';
return 0;
}