Pagini recente » Cod sursa (job #2788918) | Cod sursa (job #812038) | Cod sursa (job #2463555) | Cod sursa (job #2978583) | Cod sursa (job #921769)
Cod sursa(job #921769)
#include<fstream>
std::ifstream file_in ("royfloyd.in");
std::ofstream file_out ("royfloyd.out");
int num_nodes, cost_matrix[101][101];
int main()
{
file_in >> num_nodes;
for(int i = 1; i <= num_nodes; i++)
for(int j=1;j<=num_nodes;j++)
file_in >> cost_matrix[i][j];
for(int k = 1; k <= num_nodes; k++)
for(int i = 1; i <= num_nodes;i++)
for(int j = 1;j <= num_nodes; j++)
if (cost_matrix[i][k] && cost_matrix[k][j] )
if((cost_matrix[i][j] > cost_matrix[i][k] + cost_matrix[k][j] || !cost_matrix[i][j]) && i != j)
cost_matrix[i][j] = cost_matrix[i][k] + cost_matrix[k][j];
for(int i = 1; i <= num_nodes; i++)
{
for(int j = 1; j <= num_nodes; j++) file_out << cost_matrix[i][j] << " ";
file_out << "\n";
}
file_out.close();
return 0;
}