#include<bits/stdc++.h> usingnamespace std; constint maxn = 5e4 + 50; int n, k, a[maxn], lmx[maxn], rmx[maxn];
intmain(){ cin >> n >> k; for (int i = 1; i <= n; ++i) cin >> a[i]; sort(a + 1, a + 1 + n); for (int l = n, r = n; r >= 1; --r) { while (l >= 1 && a[r] - a[l] <= k) { rmx[l] = max(rmx[l + 1], r - l + 1); --l; } } for (int l = 1, r = 1; l <= n; ++l) { while (r <= n && a[r] - a[l] <= k) { lmx[r] = max(lmx[r - 1], r - l + 1); ++r; } } int ans = 0; for (int i = 1; i <= n; ++i) { ans = max(ans, lmx[i] + rmx[i + 1]); } cout << ans; return0; }