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);
}
}