#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int INF = 0x3f3f3f3f;
int max_length[7], sum_length[7] = { 0 };
int main(void)
{
int book[10], i, j, k, n = 5, m = 10, t1, t2, t3, u, v, max_my, start, temp, *p, res_1, res_2;
int e[6][6] =
{
{ 0,0,0,0,0,0 },
{ 0,0,13,INF,4,INF },
{ 0,13,0,15,INF,5 },
{ 0,INF,INF,0,12,INF },
{ 0,4,INF,12,0,INF },
{ 0,INF,INF,6,3,0 }
};
for (k = 1; k <= n; k++)
for (i = 1; i <= n; i++)
for (j = 1; j <= n; j++)
if (e[i][j]>e[i][k] + e[k][j])
e[i][j] = e[i][k] + e[k][j];
for (i = 1; i <= n; i++)
{
max_my = -INF;
for (j = 1; j <= n; j++)
{
sum_length[i] += e[i][j];
sum_length[i] += e[j][i];
temp = e[i][j] + e[j][i];
if (temp>max_my);
{
max_my = temp;
max_length[i] = max_my;
}
}
}
p = max_element(max_length, max_length + 7);
temp = 0;
for (i = 1; i <= n; i++)
{
if (max_length[i] == *p)
{
temp++;
(temp == 1) ? res_1 = i : res_2 = i;
}
}
if (temp == 1)
{
cout << "娱乐中心应建在顶点" << res_1 << "处" << endl;
}
if (temp == 2)
{
cout << "娱乐中心应建在顶点" << (sum_length[res_1]<sum_length[res_2] ? res_1 : res_2) << "处" << endl;
}
return 0;
}
娱乐中心
猜你喜欢
转载自blog.csdn.net/qq_41110241/article/details/81077384
今日推荐
周排行