三、阅读程序-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; } |