100 atcoder#ABC160C. [ABC160C] Traveling Salesman around Lake

[ABC160C] Traveling Salesman around Lake

配点 : 300300

問題文

11KK メートルの円形の湖があり、その周りに NN 軒の家があります。

ii 番目の家は、湖の北端から時計回りに AiA_i メートルの位置にあります。

家の間の移動は、湖の周りに沿ってのみ行えます。

いずれかの家から出発して NN 軒すべての家を訪ねるための最短移動距離を求めてください。

制約

  • 2K1062 \leq K \leq 10^6
  • 2N2×1052 \leq N \leq 2 \times 10^5
  • 0A1<...<AN<K0 \leq A_1 < ... < A_N < K
  • 入力中のすべての値は整数である。

入力

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

KK NN

A1A_1 A2A_2 ...... ANA_N

出力

いずれかの家から出発して NN 軒すべての家を訪ねるための最短移動距離を出力せよ。

20 3
5 10 15
10

11 番目の家から出発し、22 番目、33 番目の家へ順に移動すると移動距離が 1010 になります。

20 3
0 5 15
10

22 番目の家から出発し、11 番目、33 番目の家へ順に移動すると移動距離が 1010 になります。