#agc007d. [agc007_d]Shik and Game

[agc007_d]Shik and Game

問題文

#nck { width: 30px; height: auto; }

一直線上でゲームを行います。はじめプレイヤーは座標 00 におり、キャンディを NN 個持っています。座標 EE に出口があります。プレイヤーの他に、この直線上には NN 匹のクマがおり、ii 匹目のクマは座標 xix_i で静止しています。プレイヤーは直線上を 11 以下の速度で動くことができます。

プレイヤーがクマにキャンディを 11 個与えると、クマは TT 単位時間後に 11 枚のコインをその場に吐き出します。すなわち、時刻 tt にクマにキャンディを 11 個与えると、時刻 t+Tt+T にそのクマの位置に 11 枚のコインが出現します。このゲームの目的は、NN 匹すべてのクマにキャンディを与え、NN 枚のコインをすべて回収して出口から脱出することです。クマにキャンディを与えるためには、プレイヤーはクマと同じ位置にいなければなりません。また、11 匹のクマに 22 回以上キャンディを与えることはできません。コインは、出現した瞬間以降にプレイヤーがコインと同じ位置にいれば回収できます。プレイヤーが回収する前にコインが消滅することはありません。

シックはこのゲームの達人です。シックがクマにキャンディを与えたり、コインを拾うのに必要な時間は極めて短く、無視することができます。ゲームの設定が与えられるので、シックがすべてのコインを集めて出口から脱出するまでに必要な最短時間を求めてください。

制約

  • 1leqNleq100,0001 \\leq N \\leq 100,000
  • 1leqT,Eleq1091 \\leq T, E \\leq 10^9
  • 0<xi<E0 < x_i < E
  • xi<xi+1x_i < x_{i+1} (1leqi<N1 \\leq i < N)
  • 入力値はすべて整数である。

部分点

  • 600600 点分のデータセットでは、Nleq2,000N \\leq 2,000 が成り立つ。

入力

入力は以下の形式で標準入力から与えられる。

NN EE TT x1x_1 x2x_2 ...... xNx_N

出力

シックがすべてのコインを集めて出口から脱出するまでに必要な最短時間を表す整数を出力せよ。


入力例 1

3 9 1
1 3 8

出力例 1

12

出口に向かいながら、クマに会うたびにキャンディを与え、その場でコインが出るのを待つのが最適です。このとき、移動に 99 単位時間、33 回の待機に 33 単位時間、合計で 1212 単位時間を要します。


入力例 2

3 9 3
1 3 8

出力例 2

16

入力例 3

2 1000000000 1000000000
1 999999999

出力例 3

2999999996