塔子哥最近拿到了一个数组,但是他发现这个数组很不规整,他想要把这个数组变得规整一点,他每次操作可以使得其中一个数组元素加$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
扫码备注加群即可,期待您的到来~
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.