관광 사업

아직 제출이 없습니다시간 제한5초메모리 제한1024 MB

문제

옥토끼나라는 NN개의 도시를 잇는 N1N-1개의 도로로 이루어진 나라다. 어떤 도시에서도 원하는 다른 도시로 도로만을 통해 이동할 수 있다. 즉, 옥토끼나라는 트리 구조를 이룬다. 각 도로는 자연수 길이를 가지고 있으며, 두 도시 간의 거리는 두 도시를 잇는 단순 경로 위의 도로의 길이의 합이다.

옥토끼나라의 새로운 관광 사업으로 두 도시 XXYY를 골라, 두 도시간에 관광 자매결연 관계를 맺을 것이다. 자매결연을 맺으면 두 도시의 사람들이 서로 관광을 하기 위해 이동할 것이다. 그렇기에 D(X,Y)D\left(X,Y\right)XXYY 사이의 거리, C_XC\_XC_YC\_Y를 각각 XXYY에 거주하는 인구 수라고 하면 교통료로 (C_X+C_Y)×D(X,Y)\left(C\_X+C\_Y\right) \times D\left(X,Y\right)의 수익을 얻을 수 있다.

옥토끼나라는 요즘 격변을 겪고 있어 도시의 인구 수가 계속 바뀌고, 자매결연 계획에 참가하려는 도시들도 상황에 따라 다양하기 때문에 다양한 상황에서 자매결연 관계를 맺을 도시들을 구해야 한다.

QQ개의 자매결연 계획이 주어진다. 각 계획은 XX의 후보 도시 의 집합 AA, YY의 후보 도시의 집합 BB가 주어지며, 각 후보 도시의 인구 수 C_uC\_u가 주어진다. AABB에 동시에 포함되는 도시는 없다.

각 자매결연 계획마다, XXYY를 정해서 얻을 수 있는 최대의 교통료 수익을 구해야 한다.

입력

첫 줄에 NNQQ가 공백으로 구분되어 주어진다. (1N300 0001 \leq N \leq 300\ 000, 1Q100 0001 \leq Q \leq 100\ 000)

그 다음 N1N-1개의 줄에 걸쳐 도로의 정보 uu, vv, dd가 공백으로 구분되어 주어진다. 이는 ii번째 도로가 도시 uu와 도시 vv를 이으며 길이는 dd라는 뜻이다. (1u,vN1 \leq u,v \leq N, 1d301 \leq d \leq 30)

이후 QQ개의 자매결연 계획이 다음과 같은 형식으로 주어진다.

  • 첫 줄에 N_AN\_AN_BN\_B가 공백으로 구분되어 주어진다. N_AN\_AAA의 크기, N_BN\_BBB의 크기다. (1N_A,N_B,N_A+N_BN1 \leq N\_A,N\_B, N\_A+N\_B \leq N)
  • 이후 N_AN\_A개의 줄에 걸쳐 uupp가 공백으로 구분되어 주어진다. 이는 도시 uu가 집합 AA에 속하며 거주하는 인구 수가 pp명, 즉 C_u=pC\_u=p라는 뜻이다. (1uN1 \leq u \leq N, 1p3×1061 \leq p \leq 3 \times 10^6)
  • 이후 N_BN\_B개의 줄에 걸쳐 vvqq가 공백으로 구분되어 주어진다. 이는 도시 vv가 집합 BB에 속하며 거주하는 인구 수가 qq명, 즉 C_v=qC\_v=q라는 뜻이다. (1vN1 \leq v \leq N, 1q3×1061 \leq q \leq 3 \times 10^6)

_i=1Q(N_A+N_B)\sum\_{i=1}^{Q} (N\_A+N\_B)200 000200\ 000 이하다.

출력

한 줄에 하나씩 순서대로 각 자매결연 계획의 최대 교통료 수익을 출력한다.

힌트

예제 2에서, X=3X=3이고 Y=7Y=7인 경우 교통료 수익이 (5+1)×17=102(5+1) \times 17=102로 최적이다. X=1X=1이고 Y=5Y=5인 경우 또한 최적이다.