본문 바로가기
Study/99클럽 코테 스터디

[99클럽 코테 스터디 5일차 TIL] 수열

by hxxyeoniii 2025. 4. 4.

 

5일차 문제 

링크 : https://www.acmicpc.net/problem/2559

 

 

 

문제 풀이

 

수열의 최대값이 음수가 나올 수 있기에 최초 answer을 Integer.MIN_VALUE로 설정해주어야 한다.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int N = Integer.parseInt(st.nextToken());
        int K = Integer.parseInt(st.nextToken());
        int[] arr = new int[N];
        // int answer = 0;
        int answer = Integer.MIN_VALUE;

        st = new StringTokenizer(br.readLine());
        for(int i=0; i<N; i++) {
            arr[i] = Integer.parseInt(st.nextToken());
        }

        for(int i=0; i<=N-K; i++) {
            int num = 0;
            for(int j=i; j<i+K; j++) {
                num += arr[j];
            }
            answer = Math.max(answer, num);
        }

        System.out.println(answer);
    }
}