牛郎织女的团聚
题号:NC214074
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

牛郎织女生活在一个巨大的二维坐标系之中,他们的位置永远是一个二维坐标整数对(x,y),其中x,y均为整数(可能为负),在x轴上阻隔了坐标轴上半部分和下半部分的连通,即存在y=0的直线阻隔上下部分的连通。
而在x轴上,聪明的丘比特为牛郎和织女挖出了n个洞,洞的坐标为 (a1, 0),(a2, 0), ……, (aN, 0) ,其中a为整数。
牛郎每次移动只能移动到相邻的格子,设牛郎当前位置为(a,b),则他可以到达(a+1,b),(a-1,b),(a,b+1),(a,b-1) 这四个格子(但不能穿过直线,除非有洞)
即对于y = 0上的所有格子,只有 (a1, 0),(a2, 0), ……, (aN, 0) 可以通过,之外的所有纵坐标为0的网格均不能通过,而对于(x, y)有y不为0的网格可以认为是随意通过的。
下面有m个询问,询问牛郎的初始坐标为(x1,y1),织女的初始坐标为(x2,y2)时,牛郎需要移动多少次找到织女(坐标与织女重合)

输入描述:

输入的第1行为一个正整数N,为直线上洞的个数。

第2行有N个整数,a1, a2,…, aN,之间用空格隔开,为这N个洞的横坐标。

第3行为一个正整数M,表示了M个询问。

接下来M行,每行4个整数x1, y1, x2, y2,有y1与y2均不等于0,表示了一个询问从(x1, y1)到(x2, y2)的最短路。

输出描述:

输出共包含m行,第i行对于第i个询问输出从(x1, y1)到(x2, y2)的最短路距离是多少。

示例1

输入

复制
2
2 -1
2
0 1 0 -1
1 1 2 2

输出

复制
4
2

说明

n,m≤100000,ai,xi,yi绝对值不超过100000000。