#2179. 「BJOI2017」树的难题

内存限制:256 MiB 时间限制:2000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

给你一棵 n 个点的无根树。

树上的每条边具有颜色。一共有 m 种颜色,编号为 1 m ,第 i 种颜色的权值为 c_i

对于一条树上的简单路径,路径上经过的所有边按顺序组成一个颜色序列,序列可以划分成若干个相同颜色段。定义路径权值为颜色序列上每个同颜色段的颜色权值之和。

请你计算,经过边数在 l r 之间的所有简单路径中,路径权值的最大值。

输入格式

第一行,四个整数 n, m, l, r
第二行, m 个整数 c_1, c_2, \ldots, c_m ,由空格隔开,依次表示每个颜色的权值。
接下来 n-1 行,每行三个整数 u, v, c ,表示点 u 和点 v 之间有一条颜色为 c 的边。

输出格式

输出一行,一个整数,表示答案。

样例

样例输入 1

5 3 1 4
-1 -5 -2
1 2 1
1 3 1
2 4 2
2 5 3

样例输出 1

-1

样例解释 1

颜色权值均为负,最优路径为 (1, 2) (1, 3)

样例输入 2

8 4 3 4
-7 9 6 1
1 2 1
1 3 2
1 4 1
2 5 1
5 6 2
3 7 1
3 8 3

样例输出 2

11

样例解释 2

最优路径为 (3, 1, 2, 5, 6) ,其颜色序列为 (2, 1, 1, 2)

数据范围与提示

测试点编号 n m 特殊限制
1 =10^3 \le n 无特殊限制
2 =10^4 =2
3 =10^5 \le n 所有点的度数不超过 2
4 =2\times10^5
5 =10^5 =10 l=1 r=n-1
6 =2\times10^5 \le n
7 =10^5 =50 无特殊限制
8 \le n
9 =2\times 10^5 =100
10 \le n