香料的分配
时间限制: 1 秒
内存限制: 256 MB
输入: 标准输入
输出: 标准输出
题目描述
著名的门塔特(Mentat)建立了沙丘宇宙研究大学,现在要将香料资源分配给他的学生们。他总共需要分配 $n$ 个单位的香料,每个单位用于研究方向编号 $a_i$。
根据皇帝制定的规则,不能将两个单位的香料分配给同一个学生用于相同或相似方向的研究。如果方向编号 $a_i$ 和 $a_j$ 之差的绝对值不超过 $k$,即 $|a_i - a_j| \le k$,则认为它们是相似的。
香料是宇宙中最珍贵、最稀有的物质,能够将人类大脑加速到超级计算机的水平,因此门塔特根据学生的能力对他们进行了排序,并希望将香料分配给尽可能少的最有能力的学生。例如,当 $k = 2$ 时,用于研究方向 $1$、$2$ 和 $4$ 的香料可以分配给两个学生(第一个学生得到 $1$ 和 $4$,第二个学生得到 $2$),但不能全部给一个学生,因为方向 $1$ 和 $2$ 是相似的。
需要确定最少需要多少名学生,才能在不违反皇帝规则的情况下分配所有提供的香料资源。
输入格式
第一行包含两个整数 $n$ 和 $k$,表示香料单位数量和决定哪些研究方向被认为是相似的数字($1 \le n \le 2 \cdot 10^5$;$0 \le k \le 10^9$)。
第二行包含 $n$ 个整数 $a_i$,表示需要香料的各个研究方向($1 \le a_i \le 10^9$)。
输出格式
输出一个整数,表示能够分配所有香料所需的最少学生数。
评分系统
每个子任务的分数只有在通过该子任务及其所有必要子任务的所有测试后才会获得。
| 子任务 | 分数 | 额外限制 | 必要子任务 | 检查信息 |
|---|---|---|---|---|
| 0 | – | 示例 | 无 | 完全 |
| 1 | 7 | $n \le 3$ | 无 | 完全 |
| 2 | 13 | $k = 0$ | 无 | 完全 |
| 3 | 15 | $n \le 9$ | 0, 1 | 首次错误 |
| 4 | 18 | $n \le 1000$, $1 \le k \le 2$, 所有 $a_i$ 不同 | 无 | 首次错误 |
| 5 | 22 | $n \le 1000$ | 0, 1, 3, 4 | 首次错误 |
| 6 | 25 | 无 | 1 – 5 | 首次错误 |
样例
样例 1
输入
3 2
1 2 4
输出
2
样例 2
输入
9 2
7 1 2 8 5 4 9 3 6
输出
3
样例 3
输入
3 0
3 1 1
输出
2
样例 4
输入
4 4
1 100 77 32
输出
1
说明
第一个示例的解释在题目中已给出。
第二个示例中,只需将每个学生的香料单位的模 $3$ 余数相同即可分配给三个学生。两个学生不够,因为方向 $1$、$2$ 和 $3$ 中的任何一个单位的香料都不能被同一个学生得到。
第三个示例中,两个同一方向 $1$ 的香料单位必须分配给不同的学生,而方向 $3$ 的香料单位可以随后分配给其中任意一个。
第四个示例中,所有香料单位都可以分配给同一个学生,且不违反皇帝规则。
