2 1
1 1
 4 1
2 2 1 1
 10 1
2 6 3 4 2 4 4 3 2 1
 2 1
999152 999153
 8 1000000
1 1 5 1000000 1000000 2 2 2
 9 2
1 6 1 5 5 8 6 8 7
 15 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
 1 4
8
 10 1
6 3 1 3 6 4 1 3 6 4
 10 1
1 2 3 5 6 8 10 11 9 4
 7 2
1 5 5 8 9 8 8
 2 1000000
1 1000000
 8 2
3 13 9 8 3 13 9 14
 1 1
1
 2 1
1 2

2
 2
 4
 1
 2
 4
 15
 1
 7
 2
 4
 1
 5
 1
 1

#define fore(i, l, r) for(int i = int(l); i < int(r); i++)
#define forn(i, n) fore(i, 0, n)
#define all(a) (a).begin(), (a).end()
#define pb push_back
#define x first
#define y second
#define mp make_pair
 
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
int const N = 3000;
int main()
{
    long long n,k;
    cin >> n >> k;
    vector <long long> a(n);
    forn(i,n) {
        cin >> a[i];
    }
    int cnt = 0;
    int t = 0;
    sort(all(a));
    reverse(all(a));
    for (long long i = 0; i < n ; i++) {
        if (a[i + 1] == a[i]){
            t++;
            continue;
        }
        else if (a[i] > a[i + 1] && a[i] <= a[i + 1] + k) {
            cnt ++;
            cnt += t;
            t = 0;
        }
    }
    cout << n - cnt;
}