CF1154B.Make Them Equal

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a sequence a1,a2,,ana_1, a_2, \dots, a_n consisting of nn integers.

You can choose any non-negative integer DD (i.e. D0D \ge 0 ), and for each aia_i you can:

  • add DD (only once), i. e. perform ai:=ai+Da_i := a_i + D , or
  • subtract DD (only once), i. e. perform ai:=aiDa_i := a_i - D , or
  • leave the value of aia_i unchanged.

It is possible that after an operation the value aia_i becomes negative.

Your goal is to choose such minimum non-negative integer DD and perform changes in such a way, that all aia_i are equal (i.e. a1=a2==ana_1=a_2=\dots=a_n ).

Print the required DD or, if it is impossible to choose such value DD , print -1.

For example, for array [2,8][2, 8] the value D=3D=3 is minimum possible because you can obtain the array [5,5][5, 5] if you will add DD to 22 and subtract DD from 88 . And for array [1,4,7,7][1, 4, 7, 7] the value D=3D=3 is also minimum possible. You can add it to 11 and subtract it from 77 and obtain the array [4,4,4,4][4, 4, 4, 4] .

输入格式

The first line of the input contains one integer nn ( 1n1001 \le n \le 100 ) — the number of elements in aa .

The second line of the input contains nn integers a1,a2,,ana_1, a_2, \dots, a_n ( 1ai1001 \le a_i \le 100 ) — the sequence aa .

输出格式

Print one integer — the minimum non-negative integer value DD such that if you add this value to some aia_i , subtract this value from some aia_i and leave some aia_i without changes, all obtained values become equal.

If it is impossible to choose such value DD , 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
    
首页