101602: [AtCoder]ABC160 C - Traveling Salesman around Lake

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $300$ points

Problem Statement

There is a circular pond with a perimeter of $K$ meters, and $N$ houses around them.

The $i$-th house is built at a distance of $A_i$ meters from the northmost point of the pond, measured clockwise around the pond.

When traveling between these houses, you can only go around the pond.

Find the minimum distance that needs to be traveled when you start at one of the houses and visit all the $N$ houses.

Constraints

  • $2 \leq K \leq 10^6$
  • $2 \leq N \leq 2 \times 10^5$
  • $0 \leq A_1 < ... < A_N < K$
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

$K$ $N$
$A_1$ $A_2$ $...$ $A_N$

Output

Print the minimum distance that needs to be traveled when you start at one of the houses and visit all the $N$ houses.


Sample Input 1

20 3
5 10 15

Sample Output 1

10

If you start at the $1$-st house and go to the $2$-nd and $3$-rd houses in this order, the total distance traveled will be $10$.


Sample Input 2

20 3
0 5 15

Sample Output 2

10

If you start at the $2$-nd house and go to the $1$-st and $3$-rd houses in this order, the total distance traveled will be $10$.

Input

题意翻译

一个周长为 $K$ 的环形湖泊,湖泊边有 $N$ 户住宅,第 $i$ 户住宅位于从正北开始顺时针 $A_i$ 的位置。 你可以从任意位置开始,以任意方式走,但你只能在湖泊边上走,求走过所有住宅的最短路程。 - $2\le K\le 10^6$ - $2\le N\le 2\times 10^5$ - $0\le A_i<\dots<A_n<K$

加入题单

算法标签: