#P0106. 旅行者老汪

旅行者老汪

题目描述

在一条水平数轴上有 NN 间酒店沿直线排列着。其中第 ii 间酒店的坐标为 xix_i

旅行者老汪有以下两个个人原则:

  • 他从不在一天内行驶超过 LL 的距离。
  • 他从不在野外露宿。也就是说,他必须在一天结束时住在某一间酒店里。

给定 QQ 个查询。

jj(1jQ)(1 \leq j \leq Q) 查询由两个不同的整数 aja_jbjb_j 描述。

对于每个查询,找到旅行者老汪在遵循他的原则的情况下从第 aja_j 间酒店到第 bjb_j 间酒店需要行驶的最少天数。

数据保证旅行者老汪肯定能够从第 aja_j 间酒店到达第 bjb_j 间酒店。

输入格式

第一行,一个整数 NN

第二行,NN 个整数 x1,x2,,xNx_1, x_2, \ldots, x_N,两两之间以一个空格分隔。

第三行,一个整数 LL

第四行,一个整数 QQ

接下来 QQ 行,每行包含两个整数 aja_jbjb_j,以一个空格分隔。

输出格式

对于每次询问的 aja_jbjb_j,输出一行,包含一个整数,表示旅行者老汪从第 aja_j 间酒店到第 bjb_j 间酒店需要行驶的最少天数。

样例

9
1 3 6 13 15 18 19 29 31
10
4
1 8
7 3
6 7
8 5
4
2
1
2

说明/提示

样例解释

对于第 11 个查询,他可以在 44 天内从第 11 间酒店到第 88 间酒店旅行,如下所示:

  • 11 天:从第 11 间酒店到第 22 间酒店行驶。行驶的距离为 22
  • 22 天:从第 22 间酒店到第 44 间酒店行驶。行驶的距离为 1010
  • 33 天:从第 44 间酒店到第 77 间酒店行驶。行驶的距离为 66
  • 44 天:从第 77 间酒店到第 88 间酒店行驶。行驶的距离为 1010

数据规模与约定

对于 30%30\% 的数据,N,Q1000N,Q \le 1000

对于 100%100\% 的数据:

  • 2N1052 \leq N \leq 10^5
  • 1L1091 \leq L \leq 10^9
  • 1Q1051 \leq Q \leq 10^5
  • 1xi<x2<<xN1091 \leq x_i \lt x_2 \lt \ldots \lt x_N \leq 10^9
  • xi+1xiLx_{i+1} - x_i \leq L
  • 1aj,bjN1 \leq a_j,b_j \leq N
  • ajbja_j \neq b_j
  • N,L,Q,xi,aj,bjN,L,Q,x_i,a_j,b_j 都是整数。