树上信标(beacon)

题目描述

DAMON THRONE\text{DAMON THRONE} 在一片训练区中布置了 nn 个信标点。

这些信标点由 n1n-1 条道路连接,任意两个信标点之间都可以互相到达,并且不存在环。也就是说,这些道路构成一棵树。

ii 条道路连接信标点 uiu_iviv_i,长度为 wiw_i,现在有 qq 次询问,每次给出两个信标点 x,yx,y

对于每次询问,请你输出:

  1. xxyy 的路径总长度;
  2. xxyy 的路径上,最长的一条道路长度。

输入格式

第一行包含两个整数 n,qn,q,表示信标点数量和询问次数。

接下来 n1n-1 行,每行包含三个整数 ui,vi,wiu_i,v_i,w_i,表示一条道路。

接下来 qq 行,每行包含两个整数 x,yx,y,表示一次询问。

输出格式

对于每次询问,输出一行两个整数,分别表示:

  • 路径总长度;
  • 路径上的最大边权。

输入输出样例 #1

输入 #1

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

输出 #1

9 5
18 7
8 7
0 0

样例解释 #1

对于第一个询问 4,54,5

路径为:

4254\to2\to5

路径总长度为:

5+4=95+4=9

最大边权为 55

对于第二个询问 4,74,7

路径为:

4213674\to2\to1\to3\to6\to7

路径总长度为:

5+3+2+7+1=185+3+2+7+1=18

最大边权为 77

最后一组询问 1,11,1 时,起点和终点相同,路径长度为 00,最大边权也记为 00

输入输出样例 #2

输入 #2

5 3
1 2 10
2 3 20
3 4 30
4 5 40
1 5
2 4
3 3

输出 #2

100 40
50 30
0 0

数据范围与约定

对于所有测试数据,保证:

$$1 \le n,q \le 2\times 10^5,\quad 1 \le u_i,v_i,x,y \le n,\quad 1 \le w_i \le 10^9 $$

并保证输入的 n1n-1 条道路构成一棵树。

测试点 分值 nn qq wiw_i 特殊性质
121\sim 2 1010 200\le 200 103\le 10^3
343\sim 4 2020 2000\le 2000 109\le 10^9 A\text{A}
565\sim 6 105\le 10^5 B\text{B}
787\sim 8 2×105\le 2\times10^5 C\text{C}
9109\sim 10 3030

特殊性质 A\text{A}:保证树是一条链,即第 ii 条边连接 iii+1i+1

特殊性质 B\text{B}:保证所有询问中都有 x=1x=1

特殊性质 C\text{C}:保证所有边权相同。