아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

잔디 깎기

면접 대비

시간 제한1초메모리 제한128 MB

요약
일렬로 선 N마리 소의 효율이 주어질 때, 연속으로 K마리 초과를 고르지 않으면서 선택한 효율의 합을 최대로 만든다.
난이도

보통10점 중 6점

유형
동적 계획법, 슬라이딩 윈도우, 큐, 누적 합
정답자
아직 제출이 없습니다

문제

1년 전 마을의 '가장 멋진 잔디밭' 대회에서 우승한 뒤로 존 농부는 게을러졌다. 그 뒤로 잔디를 한 번도 깎지 않아 잔디밭이 엉망이 되었다. 하지만 곧 대회가 다시 열리기에, 존은 다시 우승을 노리며 잔디밭을 최상의 상태로 만들고 싶어 한다.

문제는 잔디밭이 너무 엉망이라 혼자서는 감당할 수 없어, 한 줄로 늘어선 소 NN마리(1≤N≤100,0001 \le N \le 100{,}000)의 도움이 필요하다는 것이다. 소에는 왼쪽부터 11번부터 NN번까지 번호가 매겨져 있다. 소마다 잔디를 깎는 효율이 다른데, ii번 소의 효율은 EiE_i(0≤Ei≤1,000,000,0000 \le E_i \le 1{,}000{,}000{,}000)이다.

그런데 줄에서 서로 가까이 있는 소들은 사이가 좋아서, 존이 연속으로 KK마리(1≤K≤N1 \le K \le N)를 초과해 고르면 그 소들은 잔디는 뒷전이고 파티를 벌여 버린다. 따라서 연속으로 KK마리를 초과해 고르지 않으면서 얻을 수 있는 소 효율의 합의 최댓값을 구하여라.

입력

  • 첫째 줄: 공백으로 구분된 두 정수 NN과 KK.
  • 둘째 줄부터 N+1N+1번째 줄까지: i+1i+1번째 줄에는 정수 EiE_i 하나가 주어진다.

출력

  • 첫째 줄: 존이 얻을 수 있는 최대 총 효율을 나타내는 정수 하나.

힌트

소가 55마리 있고 효율이 순서대로 1,2,3,4,51, 2, 3, 4, 5라고 하자. 연속으로 22마리를 초과해 고를 수는 없다. 세 번째 소만 빼고 모두 고르면 총 효율은 1+2+4+5=121 + 2 + 4 + 5 = 12가 되어 최대가 된다.

예제1

  1. 예제 1

    입력
    5 2
    1
    2
    3
    4
    5
    
    예상 출력
    12