Cod sursa(job #3313835)
| Utilizator | Data | 7 octombrie 2025 08:49:22 | |
|---|---|---|---|
| Problema | Floyd-Warshall/Roy-Floyd | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
#include<fstream>
using namespace std;
ifstream cin("royfloyd.in");
ofstream cout("royfloyd.out");
short a[100][100];
int main()
{
short n;
cin>>n;
for(short i=0;i<n;++i)
for(short j=0;j<n;cin>>a[i][j++]);
for(short k=0;k<n;++k)
for(short i=0;i<n;++i)
for(short j=0;j<n;++j)
if(i!=j&&a[i][k]&&a[k][j]&&(!a[i][j]||a[i][j]>a[i][k]+a[k][j]))
a[i][j]=a[i][k]+a[k][j];
for(short i=0;i<n;cout<<'\n',++i)
for(short j=0;j<n;cout<<a[i][j++]<<' ');
return 0;
}
