编程题

在 A,B 两个城市之间设有 N 个路站(如下图中的 S1,且 N<100),城市与路站之间、路站和路站之间各有若干条路段(各路段数≤20,且每条路段上的距离均为一个整数)。

A,B 的一条通路是指:从 A 出发,可经过任一路段到达 S1,再从 S1 出发经过任一路段,…最后到达 B。通路上路段距离之和称为通路距离(最大距离≤ 1000)。当所有的路段距离给出之后,求出所有不同距离的通路个数(相同距离仅记一次)。

例如:下图所示是当 N=1 时的情况:

从 A 到 B 的通路条数为 6,但因其中通路 5+5=4+6,所以满足条件的不同距离的通路条数为 5。

算法说明:本题采用穷举算法。

数据结构:N:记录 A,B 间路站的个数

数组 D[I,0]记录第 I-1 到第 I 路站间路段的个数D[I,1],D[I,2],…记录每个路段距离

数组 G 记录可取到的距离

程 序 清 单 :

查看答案
赣ICP备20007335号-2