#2007. 前进之旅
前进之旅
前进之旅
2S 512MB
题目描述
在经历了“倒可乐挑战”后,小 A 感到疲惫,于是决定尝试一项更刺激的运动:跑酷。
跑酷发生在一个名为 Ascent 的城市中。到达后,小 A 获得了一项新技能 Blask Pack,可以使用技能包将自己弹射出一段距离。
在 Ascent 中,跑酷地图可以看作一条数轴,其上有 个不同的落脚点。第 个落脚点距离小 A 的起点有 米。小 A 每次可以进行如下两种移动方式之一:
- 最多跳跃 米
- 或使用一次技能,最多弹射 米
请你判断小 A 是否能够到达最远的落脚点。如果可以,求出所需使用技能的最少次数。
输入格式
从标准输入按以下格式读取数据:
其中:
-
第一行输入一个整数 ,表示测试数据组数。
-
对于每组数据:
- 第一行输入三个整数 ,分别表示落脚点数量、最大跳跃距离和最大弹射距离。
- 第二行输入 个互不相同的整数 ,表示各个落脚点到起点的距离。
数据范围
- 所有落脚点位置互不相同
各测试点限制如下:
| 测试点编号 | 特殊性质 | ||||
|---|---|---|---|---|---|
| 无 | |||||
| 有 | |||||
| 无 | |||||
| 有 | |||||
| 无 | |||||
| 有 | |||||
| 无 | |||||
| 有 | |||||
特殊性质:数据保证 。
输出格式
对于每组测试数据:
- 如果能够到达最远落脚点,输出一个整数,表示最少使用技能的次数。
- 否则输出
-1。
样例
3
5 6 10
3 30 15 20 6
3 4 6
1 8 12
4 9 7
5 8 14 21
2
-1
0
Related
In following homework: