F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

智能车

Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 883    Accepted Submission(s): 226


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
1 4 10 3 7 2 5
 

Sample Output
3
 

Hint

样例中,一种可行的方案是 $[3,2,5]$,差值为 $3$。可以证明不存在差值更小的方案。
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-05-03 11:33:49, Gzip enabled