11374. Біля ставка
Є круглий ставок периметром \(К\) метрів і навколо нього знаходиться \(N\) будинків. \(I\)-й будинок побудований на відстані \(A_i\) метрів від крайньої північної точки ставка. Рух здійснюється за годинниковою стрілкою навколо ставка. Подорожуючи між цими будинками, можна обійти ставок.
Знайдіть мінімальну відстань, яку потрібно подолати, коли ви починаєте в одному з будинків і відвідуєте всі \(N\) будинків.
Формат вхідних даних
Перший рядок містить цілі числа \(K, N\) (\(2 \le K \le 10^6\), \(2 \le N \le 2 \times 10^5\))
Наступний рядкок містить цілі числа \(A_i\) (\(1 \le A_i \le 10^9\))
Вхідний потік містить ціле число \(N\) (\(0 \le A_1 < ... < A_N < K\))
Числа у рядках розділяються пропуском.
Формат вихідних даних
У вихідний потік виведіть шукану мінімальну відстань.
Примітка
До прикладу 1:
Якщо почати з 1-го будинку і йти до 2-го і 3-го будинків у такому порядку, загальна пройдена відстань складе 10.
Приклад вхідних даних
20 3
5 10 15
Приклад вихідних даних
10
Приклад вхідних даних
20 3
0 5 15
Приклад вихідних даних
10
Коментарі