공부공간

BOJ - 2559 ) 수열 본문

알고리즘/구현,시뮬

BOJ - 2559 ) 수열

개발자가될수있을까? 2022. 6. 27. 23:42

 


 

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

 

2559번: 수열

첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기

www.acmicpc.net

 

 


K개가 될때까지 더하고, 이후에는 K길이 전만큼은 빼주면서 현재 인덱스 값을 더해주며 진행한다.

 

 


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
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 now= 0;
		int answer=-987654321;
		int arr[] = new int[N];
		st = new StringTokenizer(br.readLine());
		for(int i=0;i<N;) {arr[i] = Integer.parseInt(st.nextToken());++i;}
		for(int i=0;i<N;) {
			if(i<K-1) {
				now+=arr[i];
			} else {
				now+=arr[i];
				answer = answer > now ? answer : now;
				now-=arr[i-K+1];
				
			}
			++i;
		}
		System.out.println(answer);
		 
	}

}

'알고리즘 > 구현,시뮬' 카테고리의 다른 글

BOJ - 25306 ) 연속 XOR  (0) 2022.06.29
BOJ - 21609 ) 상어 중학교  (0) 2022.05.29
BOJ - 2493 ) 탑  (0) 2022.05.11
BOJ - 21608 ) 상어 초등학교  (2) 2022.04.20
BOJ - 1780 ) 종이의 개수  (0) 2022.03.09
Comments