#include <bits/stdc++.h>
using namespace std;
int nxt[100005][17];
int N, L, Q;
int x[100005];
int main() {
  freopen("In.txt", "r", stdin);
  ios_base::sync_with_stdio(0);
  cin >> N;
  for (int i = 0; i < N; i++) cin >> x[i];
  cin >> L >> Q;
  for (int i = 0; i < N; i++)
    nxt[i][0] = (upper_bound(x, x + N, x[i] + L) - x) - 1;
  for (int i = 1; i <= 16; i++) {
    for (int j = 0; j < N; j++) {
      nxt[j][i] = nxt[nxt[j][i - 1]][i - 1];
    }
  }
  while (Q--) {
    int a, b;
    cin >> a >> b;
    a--;
    b--;
    if (a > b) swap(a, b);
    int ans = 0;
    for (int i = 16; i >= 0; i--) {
      if (nxt[a][i] < b) {
        ans += (1 << i);
        a = nxt[a][i];
      }
    }
    cout << ans + 1 << endl;
  }
  return 0;
}
