AT_past202107_m 分割
Description
[problemUrl]: https://atcoder.jp/contests/past202107-open/tasks/past202107_m
長さ $ N $ の整数列 $ A=(A_1,\ A_2,\ \dots\ ,A_N) $ と整数 $ C $ があります。
長さ $ K\ (K\ \geq\ 1) $ の整数列 $ B=(B_1,\ B_2,\ \dots\ ,B_K) $ の *スコア* を、以下の式で定義します。
$ \displaystyle\ C\ +\ \sum_{i=1}^{K-1}\ |B_{i+1}\ -\ B_i| $
整数列 $ A $ を順序を保ったまま、いくつかの(連続するとは限らない)部分列に分解します。
このとき整数列 $ A $ の **合計スコア** を、得られた整数列の *スコア* の総和として定義します。
整数列 $ A $ の **合計スコア** の最小値を求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ C $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $
Output Format
**合計スコア** の最小値を出力せよ。
Explanation/Hint
### 注意
この問題に対する言及は、2021/7/17 18:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。
### 制約
- $ 1\ \leq\ N\ \leq\ 200 $
- $ 1\ \leq\ C\ \leq\ 10^9 $
- $ 1\ \leq\ A_i\ \leq\ 10^9 $
- 入力は全て整数
### Sample Explanation 1
$ (4,\ 9),\ (25,\ 19,\ 22),\ (1000000000) $ と分解します。それぞれの \*スコア\* は $ 15,\ 19,\ 10 $ です。
### Sample Explanation 2
$ (3,\ 1,\ 4,\ 1,\ 5) $ の \*スコア\* は $ 112 $ です。