#L4070. 「GDKOI-S 2023」游戏

「GDKOI-S 2023」游戏

题目描述

你正在树上玩游戏。

给定一棵 nn 个结点的树,有 QQ 次询问,每次给定 x,y,zx, y, z,你要找到三个点 (u,v,w)(u, v, w) 满足 dis(u,v)=x\operatorname{dis}(u, v) = xdis(u,w)=y\operatorname{dis}(u, w) = ydis(v,w)=z\operatorname{dis}(v, w) = z。其中 dis(u,v)\operatorname{dis}(u, v) 表示树上 uuvv 两点唯一简单路径所包含的边数,dis(u,u)=0\operatorname{dis}(u, u) = 0。保证有解。

输入格式

第一行一个整数 nn,表示树的结点数。

接下来 n1n - 1 行每行两个点 u,vu, v 表示一条 uuvv 的边。

接下来一个整数 QQ,表示询问次数。

接下来 QQ 行,每行三个整数 x,y,zx, y, z 表示一组询问。

输出格式

输出 QQ 行,每行三个整数 u,v,wu, v, w,满足 dis(u,v)=x\operatorname{dis}(u, v) = xdis(u,w)=y\operatorname{dis}(u, w) = ydis(v,w)=z\operatorname{dis}(v, w) = z。如果多组合法的 (u,v,w)(u, v, w),输出任意一组,保证有解。

样例

输入

10
7 10
2 8
10 2
8 1
9 7
4 5
1 6
9 4
4 3
10
3 2 1
5 4 1
6 6 0
3 0 3
1 5 4
2 5 7
6 5 1
2 1 3
2 0 2
2 2 0

输出

2 6 1
7 6 1
9 6 6
6 2 6
6 1 7
8 6 4
9 6 1
1 2 6
6 8 6
8 6 6

数据范围与提示

  • 对于 10%10\% 的数据,满足 n,Q500n, Q \leq 500
  • 对于 20%20\% 的数据,满足 n,Q2×103n, Q \leq 2 \times 10^3
  • 对于另外 20%20\% 的数据,满足 Q=1Q = 1
  • 对于另外 20%20\% 的数据,满足 Q10Q \le 10
  • 对于另外 10%10\% 的数据,满足第 ii 条边连接 iii+1i + 1
  • 对于另外 10%10\% 的数据,满足 x=0x = 0
  • 对于 100%100\% 的数据,满足 1n,Q2×1051 \leq n, Q \leq 2 \times 10^50x,y,z2×1050 \leq x, y, z \leq 2 \times 10^5