|
||||||||||
智能车Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 1029 Accepted Submission(s): 275 Problem Description jjy 最近对智能车很感兴趣,于是他去实验室借了一辆玩。不幸的是,他发现智能车没有装配电池。 于是 jjy 购买了 $n$ 个电池,其中第 $i$ 个电池能够提供 $p_i$ 的电力,智能车需要恰好 $C$ 的电力才能正常启动。另外,如果同时装配了两枚电力差距过大的电池,智能车可能会变得不稳定。 jjy 需要选择一些电池来启动智能车,并使装配的电池中电力的最大值和最小值相差最小,请你告诉他最小的差值。如果没有任何一种启动智能车的方案,请输出 $-1$。 Input 测试点包含多组数据。第一行包含一个整数 $T$($1\leq T\leq10$),表示数据组数。每组数据输入格式如下: 第一行包含两个整数 $n$ 和 $C$($1\leq n\leq 5\times 10^4$,$1\leq C\leq 500$),分别表示电池的数量和启动智能车需要的电力。 第二行包含 $n$ 个整数 $p_1,p_2,\dots,p_n$($1\leq p_i\leq C$),分别表示每个电池提供的电力。 Output 每组数据包含一个整数,表示最小差值。如果没有任何一种启动智能车的方案,输出 $-1$。 Sample Input
Sample Output
Hint 样例中,一种可行的方案是 $[3,2,5]$,差值为 $3$。可以证明不存在差值更小的方案。 Source | ||||||||||
|