hiho week 224 register

Ended

Participants:153

Verdict:Accepted
Score:100 / 100
Submitted:2018-10-14 20:37:00

Lang:G++

Edit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <bits/stdc++.h>
using namespace std;
int a[200000];
int main()
{
    int t, A, k;
    scanf("%d", &t);
    for(int i = 0; i < t; i++){
        memset(a, 0, sizeof(a));
        scanf("%d %d", &A, &k);
        for(int j = 0; j < A; j++){
            int tmp;
            scanf("%d", &tmp);
            a[tmp]++;
        }
        int ans = 1;
        for(int j = 0; j < 100000; j++){
            if(a[j] != 0){
                int tmp = a[j];
                for(int l = j; l < j+k; l++){
                    if(a[l] >= tmp){a[l] -= tmp;}
                    else{ans = 0; break;}
                }
            }
            if(!ans) break;
        }
        if(ans) printf("YES\n");
        else printf("NO\n");
    }
    return 0;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX