시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB97662655.319%

문제

Iškasta tiesi $L$ ilgio vaga, kurioje reikia pasodinti $M$ medelių. Medelius sodins robotai, todėl visi atstumai vagoje matuojami robopėdomis.

Duota pozicijų (t. y. atstumų nuo vagos pradžios) seka $P_1, P_2, \dots , P_M$. Kiekvienoje šių pozicijų turi būti pasodintas vienas medelis.

Darbą turi atlikti $2$ robotai. Kiekvienas robotas per $1$ laiko vienetą nuvažiuoja $1$ robopėdą, o per $S$ laiko vienetų pasodina vieną medelį.

Per kiek mažiausiai laiko galima pasodinti visus medelius, jeigu dirbs abu robotai? Pirmojo roboto pradinė pozicija yra $0$, o antrojo – $L$. Abu robotai darbą pradeda tuo pačiu laiko momentu $0$.

Duotas medelių skaičius $M$, vagos ilgis $L$, bei laikas, per kurį robotas pasodina vieną medelį $S$. Taip pat duotas pozicijų, surikiuotų didėjimo tvarka, sąrašas $P_1, P_2, \dots , P_M$.

Parašykite programą, kuri apskaičiuotų trumpiausią sodinimo laiką T, per kurį robotai gali pasodinti visus medelius.

입력

Pirmojoje eilutėje pateikti trys sveikieji skaičiai: $M$ – pozicijų skaičius, $L$ – vagos ilgis, $S$ – vieno medelio sodinimo laikas.

Likusiose $M$ eilučių pateiktos medelių sodinimo pozicijos $P_1, P_2, \dots , P_M$ – po vieną sveikąjį skaičių kiekvienoje eilutėje.

출력

Pirmojoje (ir vienintelėje) eilutėje išveskite trumpiausią sodinimo laiką T.

제한

  • $1 ≤ M ≤ 10^6$
  • $1 ≤ L ≤ 10^9$
  • $1 ≤ S ≤ 10^3$
  • $0 ≤ P_i ≤ L$

예제 입력 1

3 8 1
1
3
6

예제 출력 1

5

Reikia pasodinti $3$ medelius. Vagos ilgis yra $8$. Medelis pasodinamas per vieną laiko vienetą.

Pateiktą atsakymą galima gauti naudojant tokią strategiją: pirmasis robotas sodina pirmuosius dvejus medelius, antrasis robotas – trečiąjį medelį.

Pirmasis robotas sugaiš $3$ laiko vienetus važiavimui, ir $2$ laiko vienetus sodinimui. Antrasis robotas per $2$ laiko vienetus nuvažiuos prie paskutiniosios pozicijos ir pasodins medelį per vieną laiko vienetą.

예제 입력 2

5 5 2
1
2
3
4
5

예제 출력 2

8

Reikia pasodinti $5$ medelius. Vagos ilgis yra $5$. Medelis pasodinamas per $2$ laiko vienetus.

Pateiktą rezultatą galima gauti naudojant tokią strategiją: pirmasis robotas sodina pirmuosius dvejus medelius, antrasis – likusius medelius.

Pirmasis robotas sugaiš $2$ laiko vienetus važiavimui, ir $4$ laiko vienetus sodinimui. Antrasis robotas per $2$ laiko vienetus pasodins medelį pozicijoje $5$, ir per dar $6$ laiko vienetus nuvažiuos ir pasodins medelius pozicijose $4$ ir $3$. Taigi, antrasis robotas užtruks $8$ laiko vienetus.

예제 입력 3

3 17 3
0
2
4

예제 출력 3

13

Reikia pasodinti $3$ medelius. Vagos ilgis yra $17$. Medelis pasodinamas per $3$ laiko vienetus.

Šiuo atveju, visus medelius sodina pirmasis robotas. Kiekvieną medelį jis sodina po $3$ laiko vienetus, ir tarp medelių važiuoja po $2$ laiko vienetus. Iš viso medelių sodinimas užtrunka $3 + 2 + 3 + 2 + 3 = 13$ laiko vienetų.