Advertisement

c++最短路径问题pta

阅读量:

7-9 旅游规划(25 分)

当游客拥有了一份自驾旅行的路线图后,可以了解到各个城市之间通过高速公路连接的距离以及相应的通行费用。现需编写一个程序,协助前来咨询的旅客找到从起点到终点之间的最短路径。若存在多条路径长度相同,则应选择其中费用最低的一条作为最终结果。

输入格式:

输入数据的第一行包含四个正整数N、M、S、D,其中N(2≤N≤500)表示城市数量,城市编号依次为0至N−1;M代表高速公路的数量;S为起点城市的编号;D为终点城市的编号。接下来的M行中,每行描述一条高速公路的具体信息,包括两个城市编号、高速公路的长度以及收费标准,各数据之间以空格分隔,所有数值均为整数且不超过500。输入数据确保存在可行解。

输出格式:

在单行中显示路径的长度与总费用,数值之间使用空格进行分隔,且输出末尾不得出现额外空格。

输入样例解析

复制代码
 4 5 0 3

    
 0 1 1 20
    
 1 3 2 30
    
 0 3 4 10
    
 0 2 2 20
    
 2 3 1 20
    
    
    
    

输出样例:

复制代码
    3 40
    

#include
using namespace std;
int mcost[501],visite

全部评论 (0)

还没有任何评论哟~