#L6351. 喵呜
喵呜
樱花树小猫跳跃问题
题目描述
马路边有一排整齐的 n 棵樱花树,每棵树的高度均为 h。一只小猫偶然跑到树上玩耍,但因对樱花过敏,需要尽快离开樱花树区域。
小猫初始位于第 x 棵樱花树的高度 y 位置,可通过两种跳跃方式移动,最终需达成离开条件:
- 离开条件:移动到第
1棵树或第n棵树,且所在高度为h或1(即可离开樱花树区域)。
请计算小猫达成目标的最少跳跃次数,若无法达成则输出 -1。
跳跃规则
轻轻跳
- 移动方向:向左或向右移动
a棵树。 - 高度变化:所在高度下降
b,最终高度为y - b。 - 使用限制:当前高度必须大于
b(否则无法执行)。
使劲跳
- 移动方向:向左或向右移动
a棵树。 - 高度变化:所在高度上升
b,最终高度为y + b。 - 使用限制:当前高度必须不大于
h - b(否则无法执行)。
输入格式
- 第一行输入正整数
T,表示测试数据组数(各组数据之间无空行)。 - 接下来
T行,每行输入六个正整数n, h, x, y, a, b,含义如下:n:樱花树总数h:每棵树的高度x:小猫初始所在树的编号y:小猫初始所在高度a:每次跳跃移动的树的数量b:每次跳跃的高度变化量
输出格式
- 输出
T组结果(各组结果之间无空行)。 - 每组结果:若小猫可成功离开,输出最少跳跃次数;否则输出
-1。
样例输入输出
样例 1
3
5 5 3 3 2 2
5 7 3 5 2 2
5 7 4 6 1 1
1
1
1
样例 2
3
5 5 3 3 3 2
5 7 1 4 2 2
5 7 1 2 1 2
-1
-1
-1
样例 3
4
999999999999 999999999999 454545454545 454545454545 1 1
777777777777 777777777777 343434343434 343434343434 1 1
777777777777 999999999999 343434343434 454545454545 1 1
999999999999 777777777777 454545454545 343434343434 1 1
454545454544
343434343433
-1
-1
数据范围与提示
- 通用约束:
1 ≤ T ≤ 100,1 ≤ x, a ≤ n,1 ≤ y, b ≤ h。 - 测试点具体要求如下:
| 测试点编号 | n, h 的范围 | 特殊约定 |
|---|---|---|
| 1 | ≤ 10 | b = 1 |
| 2 | 无 | |
| 3 | a = b = 1 | |
| 4 | 无 | |
| 5 | ||
| 6 | ||
| 7 | ||
| 8 | ||
| 9 | ≤ 500 | b = 1 |
| 10 | 无 | |
| 11 | a = b = 1 | |
| 12 | 无 | |
| 13 | ||
| 14 | ||
| 15 | ||
| 16 | ≤ 10⁵ | h ≤ 10 |
| 17 | 无 | |
| 18 | ||
| 19 | ||
| 20 | ||
| 21 | ≤ 10¹⁵ | h ≤ 10 |
| 22 | 无 | |
| 23 | ||
| 24 | ||
| 25 |