#HXOJ4653. 倍增求LCA练习题:祖孙询问

提交1 通过1
通过率100%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

已知一棵 nn 个节点的有根树。有 mm 个询问,每个询问给出了一对节点的编号 xxyy,询问 xxyy 的祖孙关系。

输入格式

输入第一行包括一个整数 nn 表示节点个数;

接下来 nn 行每行一对整数对 aabb 表示 aabb 之间有连边。如果 bb1-1,那么 aa 就是树的根;

n+2n+2 行是一个整数 mm 表示询问个数;

接下来 mm 行,每行两个正整数 xxyy,表示一个询问。

输出格式

对于每一个询问,若 xxyy 的祖先则输出 11,若 yyxx 的祖先则输出 22,否则输出 00

输入样例 #1

3
234 -1
12 234
120 12
3
234 120
120 234
12 120

输出样例 #1

1
2
1

输入样例 #2

3
235 -1
13 235
121 13
3
235 121
121 235
13 121

输出样例 #2

1
2
1

输入样例 #3

3
236 -1
14 236
122 14
3
236 122
122 236
14 122

输出样例 #3

1
2
1

数据范围

对于 30%30\% 的数据,1n,m1031\le n,m\le 10^3

对于 100%100\% 的数据,1n,m4×1041\le n,m\le 4\times 10^4,每个节点的编号都不超过 4×1044\times 10^4