CF1154B.Make Them Equal
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given a sequence a1,a2,…,an consisting of n integers.
You can choose any non-negative integer D (i.e. D≥0 ), and for each ai you can:
- add D (only once), i. e. perform ai:=ai+D , or
- subtract D (only once), i. e. perform ai:=ai−D , or
- leave the value of ai unchanged.
It is possible that after an operation the value ai becomes negative.
Your goal is to choose such minimum non-negative integer D and perform changes in such a way, that all ai are equal (i.e. a1=a2=⋯=an ).
Print the required D or, if it is impossible to choose such value D , print -1.
For example, for array [2,8] the value D=3 is minimum possible because you can obtain the array [5,5] if you will add D to 2 and subtract D from 8 . And for array [1,4,7,7] the value D=3 is also minimum possible. You can add it to 1 and subtract it from 7 and obtain the array [4,4,4,4] .
输入格式
The first line of the input contains one integer n ( 1≤n≤100 ) — the number of elements in a .
The second line of the input contains n integers a1,a2,…,an ( 1≤ai≤100 ) — the sequence a .
输出格式
Print one integer — the minimum non-negative integer value D such that if you add this value to some ai , subtract this value from some ai and leave some ai without changes, all obtained values become equal.
If it is impossible to choose such value D , print -1.
输入输出样例
输入#1
6 1 4 4 7 4 1
输出#1
3
输入#2
5 2 2 5 2 5
输出#2
3
输入#3
4 1 3 3 7
输出#3
-1
输入#4
2 2 8
输出#4
3