산악 트레킹 코스
시간 제한2초메모리 제한64 MB
원형 발판 위에 최대 k개의 1m 블록을 쌓아 오르내림 높이 합의 감소량을 최대로 합니다.
문제
알마티 근교에 출발점과 도착점이 같은 순환형 산악 자전거 트레킹 코스를 만들었다. 코스는 폭이 모두 같은 개의 계단으로 나타낸다. 번째 계단은 수평이고 해발 미터에 있다. 이웃한 두 계단의 높이는 같아도 된다. 코스의 난이도는 한 바퀴를 도는 동안 오르내린 높이의 합이다.
처음 만든 코스는 관광객에게 너무 어려웠다. 난이도를 낮추려고 블록 개를 쓸 수 있다. 블록의 폭은 계단의 폭과 같고 높이는 1미터이다. 블록은 계단 위에 놓을 수도 있고 다른 블록 위에 놓을 수도 있으며, 전부 쓰지 않아도 된다.
난이도를 줄일 수 있는 최댓값을 구하시오.
입력
첫째 줄에 계단의 개수 과 블록의 개수 가 주어진다. (, )
둘째 줄에 각 계단의 높이 이 주어진다. ()
출력
난이도를 줄일 수 있는 최댓값을 한 줄에 출력한다.
힌트
첫 번째 예제에서 코스의 난이도는 6이다. 높이 1인 내리막이 세 번 있고, 마지막 계단에서 첫 계단으로 돌아오는 높이 3인 오르막이 한 번 있다. 세 번째 계단에 블록 한 개를 놓고 마지막 계단에 블록 두 개를 놓으면 난이도가 4만큼 줄어든다. 블록 다섯 개를 모두 놓아도 답은 같고, 이보다 더 줄일 수는 없다.