现在,老师给了你一个长度为n的数组(a1, a2, a3, ... , an),要求你选择一个非负整数D(即D ≧ 0),然后,对于数组中的每一个元素ai,你可以进行以下3种操作中的一个(注意:只能进行一次操作):
(1)把这个数加上D,即ai = ai + D;
(2)把这个数减去D,即ai = ai - D;
(3)不改变ai,即ai = ai
因为进行操作是需要花费的代价仅与D有关,D越大,花费的钱就越多。现在老师有事走不开,所以找你来帮忙找一个最小的非负整数D,使得数组中的每一个元素在经过上述3种操作中的一个之后,每个元素都相等。
如果你能找到,请输出一个最小的非负整数D,否则,请输出-1以告诉老师这个任务是不可能完成的。
例如,对于数组[2,8],最小的D = 3,因为2 + D = 6 = 8 - D。