두더지 잡기

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

잔디밭에 두더지굴 nn개가 원형으로 놓여 있고, 각 굴에는 11번부터 nn번까지 차례로 번호가 매겨져 있다. 원형이므로 11번과 22번, 22번과 33번, \dots, nn번과 11번 굴이 서로 인접하다.

지금 ii번 굴에는 두더지가 aia_i마리 있다. 모형 권총으로 ii번 굴을 쏘면 다음 일이 동시에 일어난다.

  • ii번 굴에 있던 두더지는 모두 겁을 먹고 굴 밖으로 탈출한다. (이렇게 굴을 탈출한 두더지가 '쫓아낸' 두더지로 집계된다.)
  • ii번 굴과 인접한 두 굴에 있던 두더지도 겁을 먹어, ii번 굴이 아닌 반대쪽 이웃 굴로 달아난다. 즉 i1i-1번 굴의 두더지는 i2i-2번 굴로, i+1i+1번 굴의 두더지는 i+2i+2번 굴로 이동한다.

예를 들어 1010번 굴을 쏘면, 1010번 굴의 두더지는 모두 탈출하고 99번 굴의 두더지는 88번 굴로, 1111번 굴의 두더지는 1212번 굴로 이동한다.

권총을 최대 kk번 쏠 수 있을 때, 굴 밖으로 탈출시킬 수 있는 두더지 수의 최댓값을 구하여라.

입력

첫째 줄에 두더지굴의 수 nn과 권총을 쏠 수 있는 최대 횟수 kk가 주어진다. (5n20005 \le n \le 2000, 1kn1 \le k \le n)

둘째 줄에 nn개의 정수 a1,a2,,ana_1, a_2, \dots, a_n이 공백으로 구분되어 주어진다. aia_iii번 굴에 있는 두더지의 수이다. (0ai1060 \le a_i \le 10^6)

출력

권총을 최대 kk번 사용했을 때 굴 밖으로 탈출시킬 수 있는 두더지 수의 최댓값을 한 줄에 출력한다.

힌트

굴의 상태가 [6,1,5,3,4][6, 1, 5, 3, 4]라고 하자. (왼쪽부터 차례로 11번 굴이다.)

먼저 11번 굴을 쏘면 그 굴의 두더지 66마리가 탈출한다. 이때 11번 굴의 이웃인 55번 굴(nn번 굴)의 두더지는 44번 굴로, 22번 굴의 두더지는 33번 굴로 이동하여 상태는 [0,0,6,7,0][0, 0, 6, 7, 0]이 된다.

다음으로 44번 굴을 쏘면 그 굴에 모인 두더지 77마리가 탈출한다. 두 번의 사격으로 모두 6+7=136 + 7 = 13마리를 쫓아낼 수 있다.