#include <bits/stdc++.h>
#include <atcoder/all>
using namespace atcoder;
using namespace std;

typedef long long ll;
#define rep(i, n) for(int i = 0; i < (int)(n); i ++)

const int INF = 1000000000;

int main(){
    int n, k; cin >> n >> k;
    vector <int> a(n);
    rep(i, n) cin >> a.at(i);
    vector <int> dp(n, 0);
    dp.at(0) = 1;
    if(n == 1){
        cout << 1 << endl;
        return 0;
    } 
    if(abs(a.at(0) - a.at(1)) <= k){
        dp.at(1) = 2;
    }
    else dp.at(1) = 1;
    
    for(int i = 2; i < n; i ++){
        int tmp1, tmp2;
        tmp1 = dp.at(i - 1);
        tmp2 = dp.at(i - 2);
        if(abs(a.at(i) - a.at(i - 1)) <= k) tmp1 ++;
        if(abs(a.at(i) - a.at(i - 2)) <= k) tmp2 ++;

        dp.at(i) = max(tmp1, tmp2);
    }
    cout << dp.at(n - 1) << endl;
}