#codefestival2015qualAd. [codefestival_2015_qualA_d]壊れた電車

[codefestival_2015_qualA_d]壊れた電車

問題文

高橋鉄道では、NN 両編成の電車の一部が壊れてしまったため、MM 人の整備士が点検をすることになりました。

ii 人目の整備士ははじめ、XiX_i 両目の車両にいます。それぞれの整備士は、今いる車両を点検することと、隣の車両に移動することができます。車両の点検には時間はかかりませんが、隣の車両に移動するには 11 分かかります。

全ての車両を少なくとも 11 人の整備士が点検した状態になると点検作業は終了となります。点検作業は最短何分で終了させることができるでしょうか。


入力

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

NN MM X1X_1 X2X_2 : XMX_M

  • 11 行目には、22 つの整数 N(1N109),M(1M105,MN)N (1 ≦ N ≦ 10^9), M (1 ≦ M ≦ 10^5, M ≦ N) が空白区切りで与えられる。これは、電車が NN 両の車両からなり、整備士が MM 人いることを表す。
  • 22 行目からの MM 行には、整備士の情報が与えられる。このうち i(1iM)i (1 ≦ i ≦ M) 行目には、整数 Xi(1XiN)X_i (1 ≦ X_i ≦ N) が与えられる。これは、ii 人目の整備士がはじめ XiX_i 両目の車両にいることを表す。ただし、XiX_i は全て相異なることが保証される。また、整備士の情報は 11 両目の車両に近い順に与えられる、つまり Xj<Xj+1(1jM1)X_j < X_{j+1} (1 ≦ j ≦ M-1) であることが保証される。

部分点

この問題には部分点が設定されている。

  • N100N ≦ 100 を満たすデータセットに正解した場合は、2020 点が与えられる。
  • N500,000N ≦ 500,000 を満たすデータセットに正解した場合は、上記とは別に 6060 点が与えられる。
  • 追加の制約のないデータセットに正解した場合は、上記とは別に 2020 点が与えられる。

出力

点検作業にかかる時間の最小値を分単位で 11 行に出力せよ。出力の末尾に改行を入れること。


入力例1


17 5
1
5
10
15
16

出力例1


3

下の図のように整備士が移動すれば 33 分で点検作業を終了させることができます。

figure1


入力例2


66 10
8
9
16
23
37
47
51
52
53
64

出力例2


8