#1508. Allen的树形地铺

    ID: 1508 传统题 2000ms 1024MiB 尝试: 50 已通过: 16 难度: 6 上传者: 标签>树形数据结构树上启发式合并树的遍历

Allen的树形地铺

说明

你知道吗,Allen在机房睡了一暑假的地铺!

Allen有一棵nn个节点的树,有qq个查询,每个查询给出两个节点u,vu, v,你需要输出在删除节点uu及其所连边的情况下,节点vv所在的连通块的大小。

每个询问之间是独立的。也就是说,每次询问不会真的删除节点uu

请回忆:一棵nn个节点的树是一个含有nn个点,n1n-1条边的无向连通图。

输入格式

第一行输入一个正整数n (1n3×105)n\ (1 \le n \le 3 \times 10^5),代表给定树的节点数量。

接下来输入n1n-1行,每行给出2个正整数u,v (1u,vn,uv)u, v\ (1 \le u, v \le n, u \ne v),代表存在一条边连接节点u,vu, v。保证给定的图形成一棵树。

接下来输入一个正整数q (1q3×105)q\ (1 \le q \le 3 \times 10^5),代表询问的个数。

接下来输入qq行,每行2个正整数u,v (1u,vn,uv)u, v\ (1 \le u, v \le n, u \ne v),代表给定的询问。

输出格式

输出qq行。每行输出1个整数,代表在删除节点uu及其所连边的情况下,节点vv所在的连通块大小。

样例

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

3
2
4

提示

对于第一个询问,u=1,v=2u = 1, v = 2,删除1号节点及其所连边后,2号节点所在的连通块为{2,4,5}\{2,4,5\},故输出3。