#4588. 高速公路

高速公路

【题目描述】

A国有n个城市,编号依次为 1,2...,n1,2...,n。有 n1n-1 条高速公路,其中,第 ii 条高速公路连接城市 iii+1i+1nn 个城市依次排成一条链,每条高速公路可以双向通行(费用相同)。

每条高速公路的收费各不相同,分为两种收费方式:

  • 对于高速公路 ii,不购买年卡,单次通行价格为 aia_i 元。
  • 对于高速公路 ii,购买年卡花费 cic_i 元,使用年卡通过该高速公路,单次通行价格 bib_i 元(bi<aib_i < a_i)。

每条高速公路的年卡是独立的,不能在其他高速公路上使用。

有一名新手货车司机,有 m1m-1 个运输任务,从城市 D1D_1出发,接下来需要依次去往城市 D2,D3,.,DmD_2,D_3,….,D_m。第 jj 个运输任务需要从城市 DjD_j 去往 Dj+1D_{j+1},可能会经过多条高速公路。

货车司机没有经验,需要你来帮助他,通过购买某些高速公路的年卡,使他完成所有运输任务所花费的费用最小。

【输入格式】

第一行两个整数 n,mn,m

接下来一行 mm 个整数,第 ii 个整数表示DiD_i

接下来 n1n-1 行,每行三个整数,其中第 ii 行的三个整数依次表示第i条公路的 aia_ibib_icic_i

【输出格式】

一个整数,表示货车司机需要花费的最少费用。

【样例 #1】

样例输入 #1

4 4
1 4 2 3
130 100 90
120 60 80
100 65 75

样例输出 #1

590

【样例解释#1】

货车司机依次走的城市:1 2 3 4 3 2 3

货车司机总花费最小的方案如下:

购买第2条高速公路的年卡,花去80元。

1到2不使用年卡,费用130;

2到3使用年卡,费用60;

3到4不使用年卡,费用100;

4到3不使用年卡,费用100;

3到2使用年卡,费用60;

2到3使用年卡,费用60。

总花费为590。

【提示】

全部数据满足:

2N1052≤N≤10^5

2M1052≤M≤10^5

1Bi<Ai105(1iN1) 1≤B_i<A_i≤10^5(1 ≤i ≤N-1)

1Ci1051≤C_i≤10^5(1iN11 ≤i ≤N-1)

1DjN1≤D_j≤N(1jM1≤j≤M)

DjD_j Dj+1 D_{j+1}(1jM11≤j≤M - 1)

对于20%的数据,满足以下条件:

2N10002≤N≤1000

M=2M=2

1Bi<Ai1000 1≤B_i<A_i≤1000(1iN11≤i≤N-1)

1Ci10001≤C_i≤1000(1iN11≤i≤N-1)

对于另外30%的数据,满足以下条件:

2N10002≤N≤1000

2M10002≤M≤1000

1Bi<Ai10001≤B_i<A_i≤1000(1iN11≤i≤N-1)

1Ci10001≤C_i≤1000(1iN11 ≤i ≤N-1)

对于另外50%的数据,无额外限制。

}