CF1213G.Path Queries

传统题 时间 3000 ms 内存 256 MiB 8 尝试 19 已通过 6 标签

Path Queries

题目描述

给定一棵有 nn 个结点的带权树,以及 mm 个询问。

对于一个询问值 qq,求满足 u<vu<v 的结点对 (u,v)(u,v) 的数量,使得从 uuvv 的简单路径上最大边权不超过 qq

输入格式

第一行输入两个整数 n,mn,m1n,m21051 \le n,m \le 2 \cdot 10^5),分别表示结点数和询问数。

接下来 n1n-1 行,每行输入三个整数 ui,vi,wiu_i,v_i,w_i1ui,vin1 \le u_i,v_i \le nuiviu_i \ne v_i1wi21051 \le w_i \le 2 \cdot 10^5),表示树中的一条边及其边权。

最后一行输入 mm 个整数 q1,q2,,qmq_1,q_2,\dots,q_m1qi21051 \le q_i \le 2 \cdot 10^5),表示各询问值。

保证给出的边构成一棵树。

输出格式

按输入顺序输出 mm 个整数,其中第 ii 个整数为询问 qiq_i 的答案。

样例

样例 1

输入:

7 5
1 2 1
3 2 3
2 4 1
4 5 2
5 7 4
3 6 2
5 2 3 4 1

输出:

21 7 15 21 3

样例 2

输入:

1 2
1 2

输出:

0 0

样例 3

输入:

3 3
1 2 1
2 3 2
1 3 2

输出:

1 3 3

在线编程 IDE

建议全屏模式获得最佳体验