동전 퀴즈
면접 대비시간 제한1초메모리 제한1024 MB
코인이 b 이하인 칸을 비울 때, 연속한 k칸마다 빈 칸이 m개 이상이 되도록 b를 정하고 남은 코인의 합에서 b를 뺀 값의 최댓값을 구합니다.
문제
새 텔레비전 퀴즈의 규칙은 다음과 같습니다. 일렬로 놓인 개의 칸이 있고, 각 칸에는 번부터 번까지 번호가 붙어 있습니다. 번째 칸에는 개의 동전이 들어 있습니다.
참가자는 정수 를 고르고 개의 동전을 지불할 수 있습니다. 그러면 진행자가 동전이 개 이하인 모든 칸에서 동전을 가져가고, 그 칸은 비게 됩니다. 이후 연속된 개의 칸에는 빈 칸이 적어도 개 있어야 합니다. 마지막으로 참가자는 판에 남은 동전을 모두 가져갑니다. 참가자가 합계 개의 동전을 가져갔다면, 상금은 입니다.
참가자가 보장받을 수 있는 최대 상금을 구하세요.
입력
첫 줄에 정수 , , 이 주어집니다 ().
둘째 줄에는 정수 개 가 주어집니다 ().
출력
참가자가 보장받을 수 있는 최대 상금을 나타내는 정수 하나를 출력하세요.
힌트
첫 번째 예시에서 참가자는 를 고릅니다. 동전이 개 이하인 칸에서 동전을 제거하면 칸의 동전 수는 이 됩니다. 참가자는 칸에서 모두 개의 동전을 가져갑니다. 앞서 지불한 개를 고려하면 상금은 입니다.
두 번째 예시에서는 연속된 두 칸마다 빈 칸이 하나 이상 있어야 하므로, 참가자는 를 골라야 합니다. 그 뒤에는 동전이 남지 않고, 상금은 로 음수가 됩니다.