For this Question: Bob applied for a company. There are N rounds of interview. He can predict the result of each rounds based on his skill and type of round. Result of each round was stored in a binary array "results". Where results[ i ] = 1 means he can clear that round otherwise not. For getting selected one has to clear at least ''X" round(s) of interview.

He has to select any K contiguous interview rounds which he wants to appear for. Selection decision will be made based on these rounds. Help bob find whether he can be selected or not.First line will be N, X, K, number of interview rounds, minimum number of interview(s) needed to be cleared for selection, and number of continuous interview Bob is going to appear.

Second line will have N space separated binary digits denoting predicted result of each round.

Constraints:
1 <=  X <= K <= N<= 10^5
Output "YES" if he can be selected for X- Company, "NO" otherwise.Input:
8 2 3
1 0 1 1 0 1 0 1

Output:
YES

Explanation :
Bob can appear for round 6, 7 and 8. He can clear 2 out of these three rounds.

Input:
8 3 3
1 0 1 1 0 1 0 1

Output:
NO

Explanation :
There is now way to select 3 interviews, so that bob can clear at least 3 rounds.
, I have written this Solution Code: import java.io.*;
import java.util.*;  

public class Main {
    public static void main(String[] args) {
        InputStream inputStream = System.in;
        OutputStream outputStream = System.out;
        InputReader in = new InputReader(inputStream);
        OutputWriter out = new OutputWriter(outputStream);
        
        int N = Integer.parseInt(in.next());
        int X = Integer.parseInt(in.next());
        int K = Integer.parseInt(in.next());
        
        int a[] = new int[N];
        for(int i = 0 ; i < N ; i++){
            a[i] = Integer.parseInt(in.next());
        }
        
        int sum = 0;
        for(int i = 0 ; i < K ; i++){
            sum += a[i];
        }
        
        Boolean flag = false;
        
        if(sum >= X){
            flag = true;
        }
        
        for(int i = K ; i < N ; i++){
            sum -= a[i - K];
            sum += a[i];
            if(sum >= X){
                flag = true;
            }
        }
        
        if(flag){
            out.println("YES");
        }else{
            out.println("NO");
        }
        
        // for (int i = 1; i <= testCount; i++){
        //     int n = Integer.parseInt(in.next());
        //     ArrayList<Integer> a = solver.solve(n);
        //     for(int j=1 ; j<a.size() ; j++){
        //         if (((a.get(j) - a.get(j-1)) % j) > 0) {
        //             out.println("Not Correct");
        //             break;
        //         }
        //     }
        //     out.println("Correct");
        // }
        out.close();
    }

    static class InputReader {
        BufferedReader reader;
        StringTokenizer tokenizer;

        public InputReader(InputStream stream) {
            reader = new BufferedReader(new InputStreamReader(stream), 32768);
            tokenizer = null;
        }

        public String next() {
            while (tokenizer == null || !tokenizer.hasMoreTokens()) {
                try {
                    tokenizer = new StringTokenizer(reader.readLine());
                } catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }
            return tokenizer.nextToken();
        }

        public int nextInt() {
            return Integer.parseInt(next());
        }

    }

    static class OutputWriter {
        private final PrintWriter writer;

        public OutputWriter(OutputStream outputStream) {
            writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(outputStream)));
        }

        public OutputWriter(Writer writer) {
            this.writer = new PrintWriter(writer);
        }

        public void print(Object... objects) {
            for (int i = 0; i < objects.length; i++) {
                if (i != 0) {
                    writer.print(' ');
                }
                writer.print(objects[i]);
            }
        }

        public void println(Object... objects) {
            print(objects);
            writer.println();
        }

        public void close() {
            writer.close();
        }

        public void println(int i) {
            writer.println(i);
        }

    }
}, In this Programming Language: Java, Now tell me if this Code is compilable or not?