Pagini recente » Cod sursa (job #866286) | Cod sursa (job #2890921) | Cod sursa (job #2532075) | Cod sursa (job #2311727) | Cod sursa (job #2237781)
#include <fstream>
#include <vector>
using namespace std;
int main() {
ifstream fin("royfloyd.in");
ofstream fout("royfloyd.out");
int n;
vector<vector<int>> adj(110,vector<int>(110));
fin>>n;
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
fin>>adj[i][j];
for(int intermediate=1; intermediate<=n; intermediate++)
for(int i=1; i<=n; i++)
for(int j=1; j<=n; j++)
if(i!=j)
if (adj[i][intermediate]&&adj[intermediate][j])
if(adj[i][intermediate]+adj[intermediate][j]<adj[i][j] || !adj[i][j])
adj[i][j]=adj[i][intermediate]+adj[intermediate][j];
for(int i=1; i<=n; i++) {
for(int j=1; j<=n; j++)
fout<<adj[i][j]<<' ';
fout<<'\n';
}
return 0;
}