#649. 数字求同
数字求同
题目描述
有 个非负整数排成一排,第 个整数为 。
你可以进行以下操作:任意选择相邻的两个整数并分别减一。
你可以操作任意次。
你的目标是:最后得到若干个相同的非负整数。
问:你最少需要操作多少次?如果不可能完成,则输出 -1 。
多组数据。
输入格式
第一行:一个整数 ,表示数据组数。
对于每组数据:
- 第一行:一个整数
- 第二行: 个整数
数据保证所有组数据的 。
输出格式
共 行,每组数据的答案占一行。
输入样例
4
1
0
2
1 1
3
1 1 2
6
2 3 2 2 3 2
输出样例
0
0
-1
4
样例解释
第 1, 2 组数据:数据本就相同,无需操作。
第 3 组数据:不可能完成。
第 4 组数据:共四次操作,以下是一种可能的操作方案:
-
第一次操作后:1 2 2 2 3 2
-
第二次操作后:1 2 2 2 2 1
-
第三次操作后:1 1 1 2 2 1
-
第四次操作后:1 1 1 1 1 1
数据范围
100% 的数据:, , . 其中:
-
10% 的数据: , 。
-
20% 的数据: , 。
-
30% 的数据: 。
另外:
-
30% 的数据:所有组数据的 均为偶数;
-
30% 的数据:所有组数据的 均为奇数;
相关
在下列比赛中: