만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

Tycho

시간 제한2초메모리 제한1024 MB

요약
0에서 b까지 이동하는 Tycho의 최소 피해를 구합니다. 매초 1의 피해가 있고, p의 배수 시각에 은신처 밖에 있으면 d의 피해를 받습니다.
난이도

보통10점 중 7점

유형
동적 계획법, 수학, 최단 경로
정답자
아직 제출이 없습니다

문제

행성 탐사 차량 Tycho VIII는 광물 샘플을 채취한 뒤 본부 기지로 돌아가야 한다. Tycho는 위치 00에서 기지가 있는 위치 bb까지 직선으로 이동한다. 이동하는 동안 초당 11의 속도로 느리지만 일정하게 전진한다. 매초 혹독한 행성 환경으로 인해 11의 환경 피해를 입는다.

인근 펄서에서 나오는 방사선은 pp초마다 dd의 피해를 추가로 준다. 다만 이동 경로 중 nn곳의 은신처(동굴, 식생, 큰 바위, 행성 거대 동물의 사체 등) 중 한 곳에 숨으면 방사선 피해를 피할 수 있다. Tycho는 경로 위 어느 지점에서든 정수 초 동안 멈춰 있을 수 있다.

출발 지점 00과 기지 bb는 모두 은신처이므로, 그곳에서는 방사선 피해를 입지 않는다.

기지가 위치 1818에 있고 은신처가 위치 88과 1515에 있는 경우를 생각해 보자.

펄서의 주기가 44라고 하자. 은신처가 없는 Tycho는 시각 44, 88, 1212 등에 피해를 입는다. Tycho가 시각 00에 (은신처인) 출발 지점을 떠나면 88초 뒤 첫 번째 은신처에 도착하고, 시각 44에 방사선 피해 dd를 입는다. 시각 88에는 은신처에 있으므로 피해가 없다. 멈추지 않고 계속 가면 시각 1818에 기지에 도착하며, 그 사이 시각 1212와 1616에 dd씩 두 번 더 피해를 입는다. 결과적으로 방사선 피해는 3d3d, 환경 피해는 1818이다.

반대로 Tycho가 두 번째 은신처(위치 1515)에서 11초 기다리면 시각 1616의 펄스가 피해를 주지 않고, 시각 1919에 기지에 도착한다. 총 피해는 2d+192d + 19이다. 대부분의 dd 값에서는 이 방법이 더 낫다. 두 경우는 다음과 같다.

펄서의 주기가 1010이라면 Tycho는 출발 지점에서 22초 기다린 뒤, 어떤 은신처에도 멈추지 않고 곧장 기지로 갈 수 있다. 첫 번째 은신처(위치 88)를 펄서가 펄스를 내보내는 순간에 정확히 지나가고, 시각 2020에 기지에 도착한다. 환경 피해는 2020이고 방사선 피해는 전혀 없다.

입력

첫째 줄에 기지의 위치 bb, 펄서의 펄스 주기 pp, 펄스마다 추가되는 방사선 피해 dd, 은신처의 개수 nn이 공백으로 구분되어 주어진다. 이어서 nn개의 줄에 은신처의 위치 a1,…,ana_1, \ldots, a_n이 한 줄에 하나씩 주어진다.

출력

Tycho가 bb에 도착하기까지 받는 최소 피해량의 합을 정수 하나로 출력한다.

제한

p<bp < b와 n<bn < b라고 가정해도 된다. 항상 1≤b≤10121 \le b \le 10^{12}, 0≤d≤1060 \le d \le 10^6, 0≤n≤1050 \le n \le 10^5이다. 은신처 위치는 0<a1<⋯<an<b0 < a_1 < \cdots < a_n < b를 만족한다.

예제5

  1. 예제 1

    입력
    18 4 5 2
    8
    15
    
    예상 출력
    29
    
  2. 예제 2

    입력
    18 4 0 2
    8
    15
    
    예상 출력
    18
    
  3. 예제 3

    입력
    18 10 100 2
    8
    15
    
    예상 출력
    20
    
  4. 예제 4

    입력
    18 4 100 0
    
    예상 출력
    418
    
  5. 예제 5

    입력
    65 20 100 3
    14
    25
    33
    
    예상 출력
    172