有n个小朋友站成一排,起初从左到右每个小朋友分别有a₁,a₂,...,aₙ颗糖果。 每一轮老师都会选择一个或多个有糖果的小朋友,他们会将自己的1颗糖果送给相邻的小朋友(左边或右边)。 请计算最少需要经过多少轮,才能使所有小朋友的糖果数量都相等;如果做不到,则输出-1。
例1: n=3,初始糖果为[1,0,5],最少需要3轮,过程如下:
例2: n=3,初始糖果为[0,2,0],总和为2无法被3整除,故输出-1。
第一行输入一个整数n(1 ≤ n ≤ 10⁴),表示小朋友的人数。 第二行输入n个整数a₁,a₂,...,aₙ(0 ≤ aᵢ ≤ 10⁵),分别表示从左到右每个小朋友初始的糖果数量,整数之间以空格隔开。
输出一个整数,表示最少需要的轮数;如果无法均分则输出-1。
3
1 0 5
3