저번 구간합 문제처럼 수열의 합 공식을 이용해서 푸는 문제이다. 그런데 리스트가 2개고 이번엔 K라는 하나의 변수가 추가되면서 조심해야 할 부분이 많아졌다. 그래서 범위지옥에서 허우적거리다가 손으로 열심히 끄적여서 벗어날 수 있었다.
import sys
input = sys.stdin.readline
N, K = map(int, input().split())
temp = list(map(int, input().split()))
seq = [0] # temp의 0인덱스부터 n인덱스까지의 합을 n+1인덱스에 저장
for i in range(1, N+1):
seq.append(seq[i-1]+temp[i-1]) # temp는 인덱스 0부터 저장됨
res = seq[K]
for i in range(K, N+1):
tmp = seq[i]-seq[i-K]
res = max(tmp, res)
print(res)

import sys
input = sys.stdin.readline
N, K = map(int, input().split())
temp = list(map(int, input().split()))
seq = [sum(temp[:K])]
for i in range(K, N):
seq.append(seq[i-K] - temp[i-K] + temp[i])
print(max(seq))

근데 요새 백준허브 왜 이래? 이미 푼 문제는 다시 덮어씌워지지가 않아... 제발 자동으로 커밋 좀 해죠....