#F0001P1205. 数字跳跃游戏
数字跳跃游戏
题目描述
小明正在玩一个数字跳跃游戏。游戏在一个长度为 n+1 的数轴上进行,数轴上的位置标记为 0, 1, 2, ..., n。每个位置上有一个正整数 a[i]。
游戏规则如下:
- 小明一开始站在位置 0 上。
- 每次移动时,小明会查看当前位置上的数字:
- 如果是偶数,小明向右移动该数字的步数。
- 如果是奇数,小明向左移动该数字的步数。
- 如果小明到达了位置 n 或者超过了位置 n,则游戏胜利。
- 如果小明走到了负数位置,或者在有限步数内无法到达或超过位置 n,则游戏失败。
下面是数轴的示意图和移动规则的演示:
← 向左移动 向右移动 →
+-----+-----+-----+-----+-----+-----+-----+
| a₀ | a₁ | a₂ | a₃ | a₄ | a₅ | ...| 数字
+-----+-----+-----+-----+-----+-----+-----+
| 0 | 1 | 2 | 3 | 4 | 5 | ...| 位置
+-----+-----+-----+-----+-----+-----+-----+
↑ ↑ ↑
若a₀为 若a₂为 若a₄为
偶数→ 奇数← 偶数→
举例说明:
- 如果小明在位置 2 上,且该位置的数字 a[2] = 4(偶数),则他会向右移动 4 步,最终到达位置 6。
- 如果小明在位置 5 上,且该位置的数字 a[5] = 3(奇数),则他会向左移动 3 步,最终到达位置 2。
小明想知道,对于给定的数轴和上面的数字,他是否能够获得游戏胜利。
输入格式
第一行包含一个正整数 n,表示数轴的终点位置。 第二行包含 n+1 个正整数 a[0], a[1], a[2], ..., a[n],分别表示位置 0 到位置 n 上的数字。
输出格式
如果小明能够获得游戏胜利,输出 "PASS";否则,输出 "FAIL"。
样例数据
5
3 2 1 4 2 5
FAIL
7
2 3 1 2 4 1 2 3
FAIL
10
4 2 3 8 1 6 5 2 9 3 7
PASS
样例解释
样例1:
初始状态: 小明在位置 0
+-----+-----+-----+-----+-----+-----+-----+
| 3 | 2 | 1 | 4 | 2 | 5 | n | 数字
+-----+-----+-----+-----+-----+-----+-----+
| [0] | 1 | 2 | 3 | 4 | 5 | 终点 | 位置
+-----+-----+-----+-----+-----+-----+-----+
- 小明在位置0,数字是3(奇数),他向左移动3步,到达位置-3。由于-3是负数位置,游戏立即失败,输出"FAIL"。
样例2:
初始状态及移动过程:
+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| 2 | 3 | 1 | 2 | 4 | 1 | 2 | 3 | n | 数字
+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| [0] | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 终点 | 位置
+-----+-----+-----+-----+-----+-----+-----+-----+-----+
→2 ←3 ←1
- 小明一开始在位置0,数字是2(偶数),向右移动2步到位置2。
- 位置2上的数字是1(奇数),向左移动1步到位置1。
- 位置1上的数字是3(奇数),向左移动3步到位置-2。
- 由于-2是负数位置,游戏失败,输出"FAIL"。
样例3:
初始状态及移动过程:
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| 4 | 2 | 3 | 8 | 1 | 6 | 5 | 2 | 9 | 3 | 7 | n | 数字
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
| [0] | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 终点 | 位置
+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
→4 →8 ←1
- 小明一开始在位置0,数字是4(偶数),向右移动4步到位置4。
- 位置4上的数字是1(奇数),向左移动1步到位置3。
- 位置3上的数字是8(偶数),向右移动8步到位置11,超过了终点位置10。
- 因为小明超过了终点位置,所以游戏胜利,输出"PASS"。
数据范围
- 1 ≤ n ≤ 1000
- 1 ≤ a[i] ≤ 1000
相关
在下列比赛中: