前进之旅
提交数: 259, 通过率: 14.67%, 平均分: 48.69
题目描述:
在经历了倒可乐挑战后,小A感到疲惫并决定尝试更刺激的运动:跑酷。
跑酷在一个名为Ascent的城市进行。到达后,小A获得了一个新技能"Blask Pack",可以通过使用技能包将自己弹射出一段距离。
在Ascent中,跑酷地图是一条直线,上面有\(n\)个不同的落脚点。第\(i\)个落脚点距离小A \(a_i\)米。小A每次可以:
- 最多跳跃\(x\)米
- 或使用技能最多弹射\(y\)米
请帮助小A判断是否能够到达最远的落脚点。如果可能,找出使用技能的最少次数。
输入格式:
第一行包含一个整数 \(T\) (\(1 \le T \le 5\)),表示测试数据组数。
对于每组数据:
- 第一行包含三个整数 \(n, x, y\) ( \( 1 \le n \le 10^5\), \(0 \le x, y \le 10^6\) ),分别表示落脚点数量、最大跳跃距离和最大弹射距离。
- 第二行包含 \(n\) 个不同的整数 \(a_i\) ( \(1 \le a_i \le 10^6\) ),表示落脚点与小A的距离。
输出格式:
如果能够到达最远落脚点,输出一个整数表示最少使用技能次数;否则输出-1。
数据范围:
说明/提示
测试点编号 | n≤ | x≤ | y≤ | a≤ | 特殊性质 |
---|---|---|---|---|---|
1∼5 | 10 | 100 | 100 | 100 | 无 |
6 | 10 | 100 | 100 | 100 | 有 |
7∼11 | 100 | 1000 | 100 | 1000 | 无 |
12 | 100 | 1000 | 100 | 1000 | 有 |
13∼15 | 3000 | 106 | 106 | 106 | 无 |
16 | 3000 | 106 | 106 | 106 | 有 |
17∼19 | 105 | 106 | 106 | 106 | 无 |
20 | 105 | 106 | 106 | 106 | 有 |
- 特殊性质:数据保证 x≥y。
样例输入:
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时间限制: 2000ms
空间限制: 512MB
来源: 25年比赛小学组t4