#P1024. 「泉州一中基地赛20180519」第四题

「泉州一中基地赛20180519」第四题

Description

C 城有 nn 个旅游景点,编号分别为 11nn。它们被 n1n-1 条双向道路连接起来,形成了一棵树的结构。

热爱旅行的小 A 想为自己的假期做些打算。对于两个景点 u,vu, v,小 A 定义 f(u,v)f(u, v)uuvv 唯一的简单路径上,编号最小的景点的编号。由于某些原因,小 A 对 ff 值较小的路径有着特殊的偏爱,因此他希望自己选择的旅游路线的 ff 尽量小。

为了规划最优路线,小 A 进行了若干次如下操作:

1 x:小 A 标记了编号为 xx 的景点。初始时,所有景点都是未标记的。

2 x:小 A 想知道,如果他现在从 xx 景点出发,前往一个已被标记的景点 yy,那么对于所有的 yyf(x,y)f(x, y) 的最小值是多少。

你能准确地回答出小 A 的所有疑问吗?

Input Format

【输入格式】

从文件 sith.insith.in 中读入数据。

第一行两个正整数 n,qn, q,表示景点的数量和小 A 操作的数量。

接下来 n1n-1 行,每行两个正整数 u,vu, v,表示景点 uu 和景点 vv 之间有一条双向道路。

接下来 qq 行,每行两个整数,描述了小 A 的一次操作,格式如题目所述。

保证对于所有的 22 操作,一定存在一个被标记过的景点。

Output Format

【输出格式】

输出到文件 sith.outsith.out 中。

对于每个 22 操作,输出一行一个整数,表示最小的 f(x,y)f(x, y)

Sample

【样例 1 输入】

4 6
1 2
2 3
3 4
1 3
1 3
2 3
1 3
2 2
2 1

【样例 1 输出】

3
2
1

Hint

【子任务】

对于 10%10\% 的数据,n,q50n, q \le 50

对于 20%20\% 的数据,n,q300n, q \le 300

对于 30%30\% 的数据,n,q2000n, q \le 2000

对于另外 20%20\% 的数据,保证与每个景点连接的道路不超过两条;

对于另外 20%20\% 的数据,数据随机生成;

对于 100%100\% 的数据,1n,q1051 \le n, q \le 10^5,保证至少有一个 2 操作。