#6835. 数字收藏分类

数字收藏分类

数字收藏分类

题目背景

小明喜欢收集数字卡片。

现在他收集到了 n 张数字卡片,每张卡片上都有一个整数。

为了方便管理,他需要把这些数字卡片分成若干个收藏盒。

每个收藏盒需要满足:

任意两张卡片上的数字差值不能超过 k

例如:

当:

k = 3

数字:

5 7 8

可以放在同一个盒子中。

因为:

8 - 5 = 3

满足要求。

但是:

5 9

不能放在一起。

因为:

9 - 5 = 4 > 3

现在请你帮助小明计算:

最少需要多少个收藏盒,才能满足要求?


输入格式

第一行包含两个整数:

n k

表示:

  • n:数字卡片数量;
  • k:同一盒子中数字允许的最大差值。

第二行包含 n 个整数:

a1 a2 ... an

表示每张卡片上的数字。


输出格式

输出一个整数:

表示最少需要的收藏盒数量。


数据范围

1 ≤ n ≤ 20000

0 ≤ k ≤ 10^9

0 ≤ ai ≤ 10^9

样例1

输入

8 3
1 2 3 8 9 10 15 20

输出

4

样例解释

先排序:

1 2 3 8 9 10 15 20

分组:

第一组:

1 2 3

最大差:

3-1=2

满足。


第二组:

8 9 10

最大差:

10-8=2

满足。


第三组:

15

第四组:

20

所以:

4个收藏盒

样例2

输入

6 5
2 4 5 7 10 20

输出

3

解释

排序:

2 4 5 7 10 20

分组:

第一组:

2 4 5 7

最大差:

7-2=5

满足。

第二组:

10

第三组:

20

答案:

3