Hyunebee

연속해서 가장 긴 수 본문

Java/코테

연속해서 가장 긴 수

Hyunebee 2022. 5. 19. 03:41

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt(); // 배열의 크기
        int change = sc.nextInt();

        int[] arr = new int[N];
        for(int i = 0 ; i < N; i++){
            arr[i] = sc.nextInt();
        }


        Main T = new Main();
        System.out.println(T.solution(change, arr));

    }

    public int solution(int k, int[] arr){
        int anwser = 0;
        int cnt = 0;
        int p2 = 0;


        for(int p1 = 0; p1 < arr.length; p1++){
            if(arr[p1] == 0){
                cnt++;
            }

            while (cnt > k){
                if(arr[p2] == 0){
                    cnt--;
                }
                p2++;
            }

            anwser = Math.max(anwser, p1-p2+1);
        }

      return anwser;
    }
}

'Java > 코테' 카테고리의 다른 글

회의를 몇번 들어갈수있나?  (0) 2022.05.19
씨름선수선발하기  (0) 2022.05.19
K가 되는 수  (0) 2022.05.18
배열 합치기  (0) 2022.05.18
3주차 코딩테스트 4번  (0) 2022.05.05