#include <bits/stdc++.h>
using namespace std;
long long n, k;
long long s[300005];
long long ans = 0;
bool h[300005];
void dfs(long long a, long long b, long long c) {
  if (a == n + 1) {
    ans = max(ans, c);
    return;
  }
  if ((b == 0 || abs(s[a] - s[b]) <= k)) {
    dfs(a + 1, a, c + 1);
  }
  dfs(a + 1, b, c);
}
int main() {
  cin >> n >> k;
  for (int i = 1; i <= n; i++) cin >> s[i];
  dfs(1, 0, 0);
  cout << ans << endl;
}
