本质上说本题就是一个带有一定条件限制的最短路问题,本题的关键在于计算各边的权以及,判断两点间是否有通路。 油量的限制实际上就是对两点间是否有通路的判断,若油量无法满足某条航线的要求,则此航道则不通。 而隧道穿行与直接飞行,差别就在于把边长上除以不同的耗油率,得到不同的边的权,同时要注意如果一条边存在两种可能的权,要取较小的那个,而并不一定就选取隧道穿行。 在计算边的同时要看清楚单位,计算空间直线长度要注意公式中数据类型的转化,而且要使用二次方的最短路算法,否则由于实数计算,将导致程序运行速度过慢而超时。