AT_nupc2024_a Equalization

Description

$ N $ 個の整数からなる数列 $ A = (A_1, A_2, \dots, A_N) $ が与えられます。 あなたは以下の操作を好きな回数行うことができます。 - $ 1 \leq i \leq N-1 $ を満たす整数 $ i $ を選び、 $ A_i $ から $ 1 $ を引いて $ A_{i+1} $ に $ 1 $ を足す。 数列 $ A $ のすべての値を等しくするために必要な最小の操作回数を求めてください。 ただし、不可能な場合は `-1` を出力してください。

Input Format

入力は以下の形式で標準入力から与えられます。 > $ N $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $

Output Format

標準出力へ答えを一行で出力してください。

Explanation/Hint

### Sample Explanation 1 $ i=2,1,3,1 $ の順に操作を行うと、 $ A $ のすべての値が等しくなります。 $ 3 $ 回以下の操作では $ A $ のすべての値を等しくすることはできないため、 $ 4 $ を出力します。 ### Sample Explanation 2 どのように操作を行ってもすべての値を等しくできないときは、 `-1` を出力します。 ### Constraints - $ 1 \leq N \leq 2 \times 10^5 $ - $ 1 \leq A_i \leq 10^9 $ $ (1 \leq i \leq N) $ - 入力はすべて整数