#include #include #include using namespace std; const int maxn = 1e5 + 10; int n, m; int maski[maxn], zenski[maxn]; int main() { cin >> n; for(int i = 0; i < n; i++) { cin >> maski[i]; } cin >> m; for(int i = 0; i < m; i++) { cin >> zenski[i]; } int R, k; cin >> R >> k; sort(maski, maski + n); sort(zenski, zenski + m); int res = 0; for(int i = 0, j = k - 1; j < m; i++, j++) { int A = zenski[j] - R; int B = zenski[i] + R; int idx1 = lower_bound(maski, maski + n, A) - maski; int idx2 = upper_bound(maski, maski + n, B) - maski; if(idx1 >= 0 and idx1 < n and idx2 >= 0 and idx2 < n) { res = max(res, idx2 - idx1); } } cout << res << endl; return 0; }