#include <bits/stdc++.h>
using namespace std;
const long long int N = 1e5 + 100, M = 20;
long long long long int a[N];
long long long long int par[N][M];
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long long long int n, l;
  cin >> n;
  for (long long int i = 0; i < n; i++) {
    cin >> a[i];
  }
  cin >> l;
  for (long long int i = 0; i < n; i++) {
    long long long long int z = lower_bound(a, a + n, a[i] + l + 1) - a - 1;
    par[i][0] = z;
    cout << i << " " << par[i][0] << endl;
  }
  for (long long int i = 1; i < M; i++) {
    for (long long int j = 0; j < n; j++) {
      par[j][i] = par[par[j][i - 1]][i - 1];
    }
  }
  long long long long int q;
  cin >> q;
  for (long long int i = 0; i < q; i++) {
    long long long long int u, v;
    cin >> u >> v;
    u--, v--;
    if (v < u) {
      swap(u, v);
    }
    long long long long int t = u;
    long long long long int ans = 0;
    for (long long int j = M - 1; j > -1; j--) {
      if (par[t][j] < v) {
        ans += (1 << j);
        t = par[t][j];
      }
    }
    cout << ans + 1 << endl;
  }
}
