Pagini recente » Cod sursa (job #2069478) | Cod sursa (job #1817636) | Cod sursa (job #2978931) | Cod sursa (job #2859622) | Cod sursa (job #2754577)
#include <bits/stdc++.h>
#define ullong unsigned long long
using namespace std;
ifstream f("royfloyd.in");
ofstream g("royfloyd.out");
ullong n;
vector<vector<ullong>> G;
void Roy_Floyd(){
for(ullong k = 1; k <= n; k++)
for(ullong i = 1; i <= n; i++)
for(ullong j = 1; j <= n; j++){
G[i][j] = min(G[i][j], G[i][k] + G[k][j]);
}
for(ullong i = 1; i <=n; i++){
for(ullong j = 1; j <=n; j++){
if(G[i][j] == ULLONG_MAX)
g<<0;
else
g<<G[i][j]<<" ";
}
g<<"\n";
}
}
int main()
{
f>>n;
G.resize(n + 1);
for(ullong i = 0; i <= n; i++)
G[i].resize(n + 1);
ullong x;
for(ullong i = 1; i <=n; i++){
for(ullong j = 1; j <=n; j++){
f>>x;
G[i][j] = x;
if(!G[i][j] && i != j)
G[i][j] = ULLONG_MAX;
}
}
Roy_Floyd();
return 0;
}