Минимальная сумма после перестановки элементов в срезе

Go Сложный slices

Задача «Минимальная сумма после перестановки элементов в срезе»

Дан целочисленный срез (slice) длины N. Разрешается переставить элементы среза произвольным образом. Необходимо найти минимальную возможную сумму модулей разностей соседних элементов после перестановки, то есть минимизировать сумму |a[i] - a[i+1]| для i от 0 до N-2. Выведите эту минимальную сумму.

Формат ввода

Первая строка: целое число N (1 ≤ N ≤ 10^5). Вторая строка: N целых чисел, по модулю не превышающих 10^9, разделённых пробелами.

Формат вывода

Одно целое число — минимальная возможная сумма модулей разностей соседних элементов.

Примеры

Пример 1

ВВОД
5 10 0 5 0 10
ВЫВОД
40

Пример 2

ВВОД
a3b2c
ВЫВОД
aaabbc
main.go