A - Equalization
Editorial
/
/
Time Limit: 2 sec / Memory Limit: 1024 MiB
配点 : 100 点
問題文
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 を出力してください。
制約
- 1 \leq N \leq 2 \times 10^5
- 1 \leq A_i \leq 10^9 (1 \leq i \leq N)
- 入力はすべて整数
入力
入力は以下の形式で標準入力から与えられます。
N A_1 A_2 \dots A_N
出力
標準出力へ答えを一行で出力してください。
入力例1
4 7 4 5 4
出力例1
4
i=2,1,3,1 の順に操作を行うと、 A のすべての値が等しくなります。 3 回以下の操作では A のすべての値を等しくすることはできないため、 4 を出力します。
入力例2
5 7 8 3 5 5
出力例2
-1
どのように操作を行ってもすべての値を等しくできないときは、 -1 を出力します。