자주 타는 여행객
시간 제한2초메모리 제한2048 MB
매달 비행 횟수가 주어질 때, 연속된 m개월마다 최소 k편을 유료로 타야 하는 조건에서 유료 항공편의 최소 개수를 구합니다.
문제
항공사가 여행객에게 무료 항공편을 제공하는 특이한 신규 보상 프로그램을 운영한다.
프로그램은 두 정수 과 로 정해진다. 연속된 임의의 개월 동안 여행객은 그 기간의 항공편 중 적어도 개에 대해 요금을 내야 한다. 그 기간의 항공편이 개보다 적으면 그 항공편 전부에 대해 요금을 낸다. 그 기간의 나머지 항공편은 무료다. 이 조건은 첫 항공편보다 먼저 시작하는 개월 구간에도 똑같이 적용된다.
앞으로 연속된 개월 동안 매달 탈 항공편 수가 일정표로 주어진다. 요금을 내야 하는 항공편의 최소 개수를 구하라.
입력
첫 줄에 세 정수 , (), ()가 주어진다. 은 항공편 일정이 잡힌 연속 개월 수이고, 과 는 보상 프로그램의 매개변수다. 이어지는 개의 줄에는 각각 정수 ()가 한 개씩 주어지며, 는 그 달에 탈 예정인 항공편 수다.
출력
요금을 내야 하는 예정 항공편 수의 최솟값을 정수 하나로 출력한다.