#TIMUS1031. 铁路车票
铁路车票
1031. 铁路车票
时间限制: 1.0 second
内存限制: 64 MB
一条包含若干车站的铁路线"Yekaterinburg-Sverdlovsk"已经建成。这条铁路线可以表示为一个线段,火车站是其上的点。铁路线从"Yekaterinburg"站开始,到"Sverdlovsk"站结束,因此车站从"Yekaterinburg"(编号为1)开始编号,"Sverdlovsk"是最后一个车站。
任意两站之间的车票成本仅取决于它们之间的距离。车票价格如下表所示:
车站之间的距离 X | 车票价格 |
---|---|
只有当两个车站之间的距离不超过时,才能预订从一个车站到另一个车站的直达车票。因此,有时需要为两个所需车站之间的整个路程的各个部分预订多张车票。
例如,在上图所示的铁路线上有七个车站。不能预订从第二站到第六站的直达车票。有几种方式支付这些车站之间的旅行费用。其中一种方法是预订两张车票:一张价格为的车票用于第二站和第三站之间的旅行,另一张价格为的车票用于第三站和第六站之间的旅行。注意,尽管第二站和第六站之间的距离等于,但整个旅行不能通过预订两张价格为的车票来支付,因为每张车票仅对一次旅行有效,且每次旅行只能从车站开始和结束。
你的任务是编写一个程序,找出两个给定车站之间的最小旅行成本。
输入
第一行包含整数, , , , 和 (; )。
第二行包含一个整数,表示车站的数量 ()。
第三行包含两个不同的整数。它们表示需要支付旅行费用的车站的序列号。
接下来的行包含从铁路线上的第一个车站("Yekaterinburg")到其他车站的距离。这些距离以不同的正整数给出,并按升序排列。从"Yekaterinburg"到"Sverdlovsk"的距离不超过。任何相邻车站之间的距离不超过。两个给定车站之间的最小旅行成本不超过。
输出
输出两个给定车站之间的最小旅行成本。
样例
输入
3 6 8 20 30 40
7
2 6
3
7
8
13
15
23
输出
70