问题4428--调整队列

4428: 调整队列

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 128 MB

题目描述

 这天小g遇到了一个队列,小g觉得队列乱糟糟的不好看。于是小g希望将队列调整成为一个等差数列(差可为0)。但是小g对每个数都最多调整一次,每次可以对这个数加一、减一。请你帮助小g解决这个问题,如果能调整出等差队列,输出需要调整的数的最小数量,否则输出-1

输入

第一行一个整数n(2 <= n <= 100000),表示数列中数的个数;

第二行为n个整数pi (1 <= pi <= 1e9)

输出

输出一个整数,表示操作数量的最小值。如果不存在则输出-1

样例输入 Copy

4
24 21 14 10
2
500 500
3
14 5 1
5
1 3 6 9 12

样例输出 Copy

3
0
-1
1

提示

 第一个队列调整成[25,20,15,10]花费三次操作

来源/分类