PTA 07-图4 哈利·波特的考试 (25分)

Posted 我是一个小木匠!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PTA 07-图4 哈利·波特的考试 (25分)相关的知识,希望对你有一定的参考价值。

/* 1.用floyd 求多源最短路径~ 
   2.找出节点k到其他节点的最短路径的最大值 MAX[k].
   3 在找出MAX数组中最小的即为所求~~ 如果最小值为INF~~~ 说明图不连通! 输出0 
*/
#include "iostream"
using namespace std;
#define INF 101
int map[101][101];
void floyd(int v) {
	int i, j, k;
	for(k=1;k<=v;k++)
		for(i=1;i<=v;i++)
			for (j = 1; j <= v; j++) {
				if (map[i][k] + map[k][j] < map[i][j])
					map[i][j] = map[i][k] + map[k][j];
			}
}
int main() {
	int v, e;
	cin >> v >> e;
	for (int i = 1; i <= v; i++)
		for (int j = 1; j <= v; j++) {
			if (i == j)
				map[i][j] = 0;
			else
				map[i][j] = INF;
		}
	while (e--) {
		int a, b, c;
		cin >> a >> b >> c;
		map[a][b] = map[b][a] = c;
	}
	floyd(v);

	int MIN = INF;
	int MAX = 0;
	int index;
	for (int i = 1; i <= v; i++) {
		MAX = 0;
		for (int j = 1; j <= v; j++) {
			if (map[i][j] >= MAX)
				MAX = map[i][j];
		}
		if (MAX < MIN)
		{
			MIN = MAX;
			index = i;
		}
	}
	if (MIN == INF) {
		cout << "0";
		return 0;
	}
	cout << index << " " << MIN << endl;
	return 0;
}

  

以上是关于PTA 07-图4 哈利·波特的考试 (25分)的主要内容,如果未能解决你的问题,请参考以下文章

07-图4 哈利·波特的考试 (25 分)

07-图4 哈利·波特的考试 (25 分)

07-图4 哈利·波特的考试 (25 分)

数据结构1 - 07-图4 哈利·波特的考试

07-图4 哈利·波特的考试(25 分)多源最短路,邻接矩阵

哈利·波特的考试