#include <bits/stdc++.h>
using namespace std;
int32_t main() {
  long long n, i, m, j, k, l;
  cin >> n >> k;
  long long a[n + 1];
  for (i = 1; i <= n; i++) cin >> a[i];
  long long dp[n + 1];
  dp[1] = 1;
  for (i = 2; i <= n; i++) {
    dp[i] = 1;
    long long max1 = 0;
    for (j = 1; j < i; j++) {
      if (abs(a[j] - a[i]) <= k) {
        max1 = max(max1, dp[j]);
      }
    }
    max1++;
    dp[i] = max1;
  }
  long long max1 = 0;
  for (i = 1; i <= n; i++) max1 = max(max1, dp[i]);
  cout << max1;
  return 0;
}
