组合题6 个小题
已作答 0 / 6
1#include <algorithm>2#include <cstdio>3#include <cstring>4#define ll long long5int n, k;6int a[200007];7int ans[200007];8int main() {9 scanf("%d%d", &n, &k);10 for (int i = 1; i <= n; ++i) {11 scanf("%d", &a[i]);12 }13 std::sort(a + 1, a + n + 1);14 n = std::unique(a + 1, a + n + 1) - a - 1;15 for (int i = 1, j = 0; i <= n; ++i) {16 for (; j < i && a[i] - a[j + 1] > k; ++j)17 ;18 ans[i] = ans[j] + 1;19 }20 printf("%d\n", ans[n]);21 return 0;22}当输入的 n=100、k=2、a={1,2,…,100} 时,输出为( )。