#P9440. [ICPC 2021 WF] Dungeon Crawler

[ICPC 2021 WF] Dungeon Crawler

Description

有一棵 nn 个结点的树,边带权。你可以从一个结点通过边移动到一个相邻的结点,花费等同于边权的时间。

其中,有两个特殊结点,一个结点里有钥匙,一个结点里有陷阱。你只有先获得钥匙,才能进入陷阱所在的结点。

现有 qq 组询问,在第 ii 组询问中,你要从第 sis_i 号结点出发,钥匙在第 kik_i 号结点,陷阱在第 tit_i 号结点。你需要对于每组询问回答遍历整棵树所需的最短时间。题目保证你不会在钥匙所在的结点或者陷阱所在的结点出发。如果不可能遍历整棵树,输出 impossible

Input Format

第一行两个整数 n,qn,q,含义如题目所述。

接下来 n1n-1 行,每行三个整数 u,v,wu,v,w,表示有一条连接结点 u,vu,v,权值为 ww 的边。

接下来 qq 行,每行三个整数 si,ki,tis_i,k_i,t_i,含义如题目所述。

3n20003\le n\le 20001q2×1051\le q \le 2\times10^51u,vn,uv1\le u,v\le n,u\ne v1w1091\le w\le 10^91si,ki,tin1\le s_i,k_i,t_i\le n

Output Format

对于每组询问,输出一行,包含一个整数表示答案,或者输出 impossible 表示无解。

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

15
17
impossible
12

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

11
impossible
10
10