#P1549. 2023.09.07-XC-第三题-塔子哥规整数组

2023.09.07-XC-第三题-塔子哥规整数组

题目描述

塔子哥最近拿到了一个数组,但是他发现这个数组很不规整,他想要把这个数组变得规整一点,他每次操作可以使得其中一个数组元素加$1$,另一个数组元素减$1$。塔子哥希望最终数组的每个元素大小都在$[l,r]$范围内,他想知道自己能否完成目标,如果能的话,最少要多少次操作?

输入描述

第一行输入一个正整数$t$,代表用例的组数。

对于每组用例:

第一行输入三个正整数$n,l,r$。

第二行输入$n$个正整数$a_i$,代表游游拿到的数组

$1 \leq t \leq 1000$

$2 \leq n \leq 200000$

$1 \leq l\leq r \leq 10^9$

$1 \leq a_i \leq 10^9$

保证所有的$n$的总和不超过$200000$

输出描述

输出$t$行,每行一个整数,含义如下:

如果无法用有限次数的操作次数使得每个元素大小都在$[l,r]$范围内,请输出$-1$。否则输出一个整数,代表最少的操作次数

样例

输入输出示例仅供调试,后台判题数据般不包含示例

输入

2
2 3 5
1 2
3 4 7
3 7 7

输出

-1
1