import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        //贪心+滑动窗口
        //动态扩展的区间快速获取当前区间的最大值/最小值
        //一个组里完全可以只有一个元素,输数最少的分组所以
        //加入新元素,如果加入后,这个组的 max - min <= k → 可以合并
//如果加入后,max - min > k → 不能合并 → 必须结束当前组,从这个新元素开始新建一组
        int n=in.nextInt();
        int k=in.nextInt();
        int[]arr=new int[n];
        for(int i=0;i<n;i++){
            arr[i]=in.nextInt();
        }
        int group=1;
        int min=arr[0];
        int max=arr[0];
        for(int i=1;i<n;i++){
            int newmin=Math.min(arr[i],min);
            int newmax=Math.max(max,arr[i]);
            if(newmax-newmin>k){
                group++;
                min=arr[i];
                max=arr[i];
            }else{
                //合并元素更新最大值最小值
                min=newmin;
                max=newmax;
            }
        }
            System.out.println(group);
        }
}