开始 2020-05-17 12:00:00

517编程5月月赛-普及组

结束 2020-05-17 14:30:00
Contest is over.
当前 2020-07-04 00:11:47

B. 数组变换

描述

给你一个数组包含$n$个整数$a_1,a_2,...,a_n$


 

你可以选择一个非负整数$D$, 对于每个$a_i$, 你都可以做如下三种决策


 

1: 增加$D$, $a_i = a_i + D$


 

2: 减去$D$, $a_i = a_i - D$


 

3: 保持不变


 

你的目标是找到一个最小的非负整数$D$使得所有的$a_i$相等

输入

第一行输入一个整数$n$ ($1 \le n \le 100$)


 

第二行输入$n$个整数$a_i$ ($1 \le a_i \le 100$)

输出

如果可以找到这样一个非负整数$D$,输出最小的一个


 

否则输出-1

样例

输入

6
1 4 4 7 4 1

输出

3

输入

5
2 2 5 2 5

输出

3

输入

4
1 3 3 7

输出

-1
时间限制 1 秒
内存限制 128 MB