B. Сделай равными
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вам задана последовательность $$$a_1, a_2, \dots, a_n$$$, которая состоит из $$$n$$$ целых чисел.

Вы можете выбрать любое неотрицательное целое число $$$D$$$ (т.е. $$$D \ge 0$$$) и для каждого $$$a_i$$$ совершить одно из следующих действий:

  • прибавить $$$D$$$ (только один раз), т.е. выполнить $$$a_i := a_i + D$$$;
  • вычесть $$$D$$$ (только один раз), т.е. выполнить $$$a_i := a_i - D$$$;
  • оставить значение $$$a_i$$$ без изменения.

Возможно, что после какой-либо операции значение какого-либо $$$a_i$$$ может стать отрицательным.

Ваша задача выбрать такое минимальное неотрицательное целое $$$D$$$ и выполнить последовательность действий, что все $$$a_i$$$ станут равными (т.е. $$$a_1=a_2=\dots=a_n$$$).

Выведите искомое $$$D$$$ или, если требуемое $$$D$$$ найти невозможно, выведите -1.

Например, для массива $$$[2, 8]$$$ значение $$$D=3$$$ является минимально возможным, потому что Вы можете получить массив $$$[5, 5]$$$, если Вы добавите $$$D$$$ к $$$2$$$ и вычтете $$$D$$$ из $$$8$$$. А для массива $$$[1, 4, 7, 7]$$$ значение $$$D=3$$$ также является минимально возможным. Вы можете добавить его к $$$1$$$ и вычесть его из $$$7$$$ и получить массив $$$[4, 4, 4, 4]$$$.

Входные данные

В первой строке входных данных записано одно целое число $$$n$$$ ($$$1 \le n \le 100$$$) — длина последовательности $$$a$$$.

Вторая строка входных данных содержит последовательность из $$$n$$$ целых чисел $$$a_1, a_2, \dots, a_n$$$ ($$$1 \le a_i \le 100$$$) — элементы последовательности $$$a$$$.

Выходные данные

Выведите одно целое число — такое минимальное неотрицательное целое значение $$$D$$$, что его возможно прибавить к некоторым $$$a_i$$$, вычесть из некоторых $$$a_i$$$ и оставить остальные $$$a_i$$$ без изменения так, что в результате последовательность все элементы последовательности будут одинаковыми.

Если требуемое значение $$$D$$$ найти невозможно, выведите -1.

Примеры
Входные данные
6
1 4 4 7 4 1
Выходные данные
3
Входные данные
5
2 2 5 2 5
Выходные данные
3
Входные данные
4
1 3 3 7
Выходные данные
-1
Входные данные
2
2 8
Выходные данные
3