#P139. 恼鬼偷袭

恼鬼偷袭

题目背景

游戏 Minecraft 中的恼鬼是一种很厉害的生物,有着很高的伤害,超小的碰撞箱,并且可以无视任何方块穿墙。

题目描述

有一块 n×mn\times m 的区域,第 ii 行第 jj 列的最下方有 hi,jh _ {i, j} 个方块,而在这些方块的上方则都是空气。每个方块都是一个 1×1×11\times 1\times 1 的立方体。在这个区域外则全都是空气。

qq 只恼鬼。恼鬼希望一直在方块中躲藏移动来偷袭,因此它们不能进入空气。恼鬼会一直处于某个方块中间,可以用该方块的行、列和高度来描述一个恼鬼的位置。恼鬼可以移动,前后左右移动一格不需要耗费体力,而上下移动则需要 11 点体力。

ii 只恼鬼刚开始时在 axiax _ iayiay _ i 列最高的方块中,它想移动到 bxibx _ ibyiby _ i 列最高的方块中。请求出它的体力消耗最小值。

输入格式

第一行两个正整数 n,mn, m

接下来 nn 行每行 mm 个正整数表示每个位置的方块数。

接下来一行一个正整数 qq

接下来 qq 行,第 ii 行四个正整数表示 axi,ayi,bxi,byiax _ i, ay _ i, bx _ i, by _ i

输出格式

qq 行,每行一个整数表示答案。

样例

样例输入 1

3 3
9 4 7 
8 1 7 
1 2 1 
4
1 3 2 3
3 1 3 2
1 2 3 1
2 1 1 1

样例输出 1

0
1
3
1

样例输入/输出 2

见下发文件 vex2.in/ans。该样例满足测试点 686 \sim 8 的限制。

样例输入/输出 3

见下发文件 vex3.in/ans。该样例满足测试点 9119 \sim 11 的限制。

数据范围与提示

本题共 2020 个测试点,每个测试点 55 分。

测试点编号 特殊性质
131 \sim 3 hi,j103\sum h _ {i, j} \le 10 ^ 3q103q \le 10 ^ 3
454 \sim 5 所有的 hi,jh _ {i, j} 都相同
686 \sim 8 保证 haxi,ayih _ {ax _ i, ay _ i} 是所有 hh 中的最小值
9119 \sim 11 n×m103n\times m \le 10 ^ 3q103q \le 10 ^ 3
121412 \sim 14 n×m105n\times m \le 10 ^ 5q5×104q \le 5 \times 10 ^ 4
151715 \sim 17 q5×104q \le 5 \times 10 ^ 4
182018 \sim 20 无特殊限制

对于所有数据,1n×m1061 \le n \times m \le 10 ^ 61q5×1051 \le q \le 5 \times 10 ^ 51hi,j1091 \le h _ {i, j} \le 10 ^ 91axi,bxin1 \le ax _ i, bx _ i \le n1ayi,byim1 \le ay _ i, by _ i \le m