#P16286. [Ucpc2020]旅游事业

[Ucpc2020]旅游事业

题目描述

月兔国由 NN 座城市和 N1N-1 条道路组成。任意两座城市之间都可以通过道路互相到达,因此整个国家构成一棵树。

每条道路都有一个正整数长度。两座城市之间的距离,是连接它们的唯一简单路径上所有道路长度之和。

旅游部门准备选择两座城市 XXYY 建立旅游友好城市关系。

设两座城市的距离为 D(X,Y)D(X,Y),城市 X,YX,Y 的人口分别为 CX,CYC_X,C_Y,则可获得的交通费收入为

(CX+CY)×D(X,Y).(C_X+C_Y)\times D(X,Y).

共有 QQ 个相互独立的计划。每个计划给出:

  • 城市 XX 的候选集合 AA
  • 城市 YY 的候选集合 BB
  • 本次计划中每个候选城市的人口数。

集合 AABB 不相交。不同计划中的人口数彼此独立,不会永久修改城市信息。

对于每个计划,选择

XA,YB,X\in A, \qquad Y\in B,

使交通费收入最大,并输出最大值。

输入格式

第一行包含两个整数 N,QN,Q

1N300000,1Q100000.1\le N\le 300000, \qquad 1\le Q\le 100000.

接下来 N1N-1 行,每行包含三个整数 u,v,du,v,d,表示城市 uuvv 之间有一条长度为 dd 的道路。

1u,vN,1d30.1\le u,v\le N, \qquad 1\le d\le 30.

随后依次输入 QQ 个计划。每个计划格式如下:

第一行包含两个整数 NA,NBN_A,N_B,分别表示集合 AA 和集合 BB 的大小。

1NA,NB,NA+NBN.1\le N_A,N_B, \qquad N_A+N_B\le N.

接下来 NAN_A 行,每行包含两个整数 u,pu,p,表示城市 uAu\in A,且本次计划中其人口为 pp

接下来 NBN_B 行,每行包含两个整数 v,qv,q,表示城市 vBv\in B,且本次计划中其人口为 qq

人口满足

1p,q3×106.1\le p,q\le 3\times 10^6.

同一计划中,AABB 不相交。

保证所有计划的候选城市总数满足

i=1Q(NAi+NBi)200000.\sum_{i=1}^{Q}(N_{A_i}+N_{B_i})\le 200000.

输出格式

对每个计划输出一行,表示能够获得的最大交通费收入。

样例 1

输入

3 3
1 2 1
2 3 1
1 2
1 1
2 2
3 3
1 2
2 2
1 1
3 3
1 2
3 3
1 1
2 2

输出

8
5
8

样例 2

输入

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

输出

102

样例说明

在样例 2 中,选择 X=3,Y=7X=3,Y=7 时,收入为

(5+1)×17=102.(5+1)\times 17=102.

选择 X=1,Y=5X=1,Y=5 也能取得相同最优值。