CF940A Points on the line
题目描述
我们没有测试用例。一个大型奥林匹克竞赛即将到来。但出题人的首要任务应该是为比赛再添加一道题目。
一组在数轴上的点的多重集的直径,定义为该集合中任意两点之间的最大距离。例如,多重集 $ \{1,3,2,1\} $ 的直径为 $2$。
只包含一个点的多重集的直径为 $0$。
给定 $n$ 个在数轴上的点。你需要移除最少数量的点,使得剩下点的多重集的直径不超过 $d$。
输入格式
第一行包含两个整数 $n$ 和 $d$($1 \leq n \leq 100, 0 \leq d \leq 100$),分别表示点的数量和允许的最大直径。
第二行包含 $n$ 个用空格分隔的整数($1 \leq x_{i} \leq 100$),表示这些点的坐标。
输出格式
输出一个整数,表示你需要移除的最少点数。
说明/提示
在第一个测试用例中,最优策略是移除坐标为 $4$ 的点。剩下的点坐标为 $1$ 和 $2$,此时直径为 $2-1=1$。
在第二个测试用例中,直径为 $0$,因此无需移除任何点。
在第三个测试用例中,最优策略是移除坐标为 $1$、$9$ 和 $10$ 的点。剩下的点坐标为 $3$、$4$ 和 $6$,此时直径为 $6-3=3$。
由 ChatGPT 4.1 翻译