1 of 2

三、阅读程序-2

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <algorithm>
#include <cstdio>
#include <cstring>
#define ll long long
int n, k;
int a[200007];
int ans[200007];
int main() {
	scanf("%d%d", &n, &k);
	for (int i = 1; i <= n; ++i) {
		scanf("%d", &a[i]);
	}
	std::sort(a + 1, a + n + 1);
	n = std::unique(a + 1, a + n + 1) - a - 1;
	for (int i = 1, j = 0; i <= n; ++i) {
		for (; j < i && a[i] - a[j + 1] > k; ++j)
            ;
		ans[i] = ans[j] + 1;
	}
	printf("%d\n", ans[n]);
	return 0;
}
Scroll to Top