Submission

Status:

[PP][PP][PPP][-SS][PPP][PPPPP][PPPP-SS][PPPP][PPPP][PPPPP]

Subtask/Task Score:

{10/10}{10/10}{10/10}{0/10}{10/10}{10/10}{0/10}{10/10}{10/10}{10/10}

Score: 80

User: sulinxishere

Problemset: ช่องบนไม้

Language: c

Time: 0.011 second

Submitted On: 2025-08-06 18:11:58

#include <stdio.h>
int main(){
    int n,w,l,k,tmp;
    scanf("%d %d %d",&n,&w,&l);
    int cl[w+1],res[w+1];
    for(int i = 0;i<=w;i++){
        cl[i] = 0;
    }
    for(int i = 0;i<n;i++){
        scanf("%d",&k);
        for(int j = 0;j<k;j++){
            scanf("%d",&tmp);
            cl[tmp]++;
        }
    }
    for(int i = 1;i<=w;i++){
        res[i] = cl[i];
    }
    for(int i = 1;i<=w;i++){
        if(cl[i]!=0){
            for(int j = 1;j<=l && i+j<=w;j++){
                res[i+j] = res[i+j] + cl[i];
            }

            for(int j = 1;j<=l && i-j>=1;j++){
                res[i-j] = res[i-j] + cl[i];
            }
        }   
    }
    for(int i=1;i<=w;i++){
        if(res[i]>=n){
            printf("1");
            return 0;
        }
    }
    printf("0");
}