#CF1681E. 迷宫冒险

迷宫冒险

E. 迷宫冒险
时间限制:6 秒
内存限制:512 兆字节

你找到了一张形状奇特的迷宫地图。这张地图是一个网格,包含 nn 行和 nn 列。网格的行从下到上编号为 11nn,列从左到右编号为 11nn

迷宫有 nn 层。第一层是左下角的格子(单元格 (1,1)(1,1))。第二层由所有与第一层相邻(包括边相邻或角相邻)且在网格内的格子组成。第三层由所有与第二层相邻(包括边相邻或角相邻)且在网格内的格子组成,以此类推。

例如,有 55 层的迷宫形状如下图所示:

(图片省略,原文有图)

各层之间用墙隔开,但墙上有门。

除了第 nn 层外,每一层到下一层恰好有两个门。一个门设在当前层的顶部墙上,另一个门设在当前层的右侧墙上。对于第 11 层到第 n1n-1 层,你都会得到这两个门的坐标。门可以双向通行:既可以从第 ii 层到第 i+1i+1 层,也可以从第 i+1i+1 层到第 ii 层。

如果你站在某个格子中,你可以移动到边相邻的格子,前提是墙没有阻挡你的移动(例如,如果两个格子之间没有门,你就不能从一层移动到另一层)。

现在你有 mm 个询问,形式如下:从格子 (x1,y1)(x_1, y_1) 到格子 (x2,y2)(x_2, y_2) 最少需要移动多少步。


输入格式

第一行包含一个整数 nn2n1052 \le n \le 10^5)——迷宫的层数。

接下来的 n1n-1 行中,第 ii 行包含四个整数 d1,x,d1,y,d2,x,d2,yd_{1,x}, d_{1,y}, d_{2,x}, d_{2,y}1d1,x,d1,y,d2,x,d2,yn1 \le d_{1,x}, d_{1,y}, d_{2,x}, d_{2,y} \le n)——两个门的坐标。这两个格子都在第 ii 层。第一个格子与第 ii 层的顶部墙边相邻,那个边就是门所在的位置。第二个格子与第 ii 层的右侧墙边相邻,那个边就是门所在的位置。

接下来一行包含一个整数 mm1m21051 \le m \le 2 \cdot 10^5)——询问的数量。

接下来的 mm 行中,第 jj 行包含四个整数 x1,y1,x2,y2x_1, y_1, x_2, y_21x1,y1,x2,y2n1 \le x_1, y_1, x_2, y_2 \le n)——询问中两个格子的坐标。


输出格式

对于每个询问,输出一个整数——从 (x1,y1)(x_1, y_1)(x2,y2)(x_2, y_2) 最少需要移动的步数。


样例输入 #1

2
1 1 1 1
10
1 1 1 1
1 1 1 2
1 1 2 1
1 1 2 2
1 2 1 2
1 2 2 1
1 2 2 2
2 1 2 1
2 1 2 2
2 2 2 2

样例输出 #1

0
1
1
2
0
2
1
0
1
0

样例输入 #2

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

样例输出 #2

3
4
3
6
2