祖孙询问
题号:NC50471
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

已知一棵n个节点的有根树。有m个询问,每个询问给出了一对节点的编号x和y,询问x与y的祖孙关系。

输入描述:

输入第一行包括一个整数n表示节点个数;
接下来n行每行一对整数对a和b表示a和b之间有连边。如果b是-1,那么a就是树的根;
第n+2行是一个整数m表示询问个数;
接下来m行,每行两个正整数x和y,表示一个询问。

输出描述:

对于每一个询问,若x是y的祖先则输出1,若y是x的祖先则输出2,否则输出0。
示例1

输入

复制
10
234 -1
12 234
13 234
14 234
15 234
16 234
17 234
18 234
19 234
233 19
5
234 233
233 12
233 13
233 15
233 19

输出

复制
1
0
0
0
2

备注:

对于的数据,
对于的数据,,每个节点的编号都不超过