#include <bits/stdc++.h>
using namespace std;
long long x[100000];
long long d[100000], d2[100000];
void pre(int n, int l) {
  for (int i = 0; i < n; i++) {
    int j = i;
    while (j < n && x[j] - x[i] <= l) j++;
    d[i] = j - 1;
  }
  for (int i = n - 1; i >= 0; i--) {
    int j = i;
    while (j >= 0 && x[j] - x[i] >= -l) j--;
    d2[i] = j + 1;
  }
}
long long solve(int a, int b) {
  int i = a;
  long long ans = 1;
  if (a < b) {
    while (d[i] < b) {
      i = d[i];
      ans++;
    }
  } else {
    while (d2[i] > b) {
      i = d2[i];
      ans++;
    }
  }
  return ans;
}
int main() {
  int n, l, q, a, b;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%lld", &x[i]);
  }
  scanf("%d", &l);
  pre(n, l);
  scanf("%d", &q);
  for (int i = 0; i < q; i++) {
    scanf("%d", &a);
    scanf("%d", &b);
    printf("%lld\n", solve(a - 1, b - 1));
  }
  return 0;
  ;
}
