#P16816. [NWRRC 2023资格赛]Snakes&Snakes
[NWRRC 2023资格赛]Snakes&Snakes
题目背景
Vadim 有一块用于游玩 Snakes&Snakes 的一维棋盘。棋盘由 个格子组成,从左到右编号为 到 。
初始时,棋子位于第 格;游戏目标是到达第 格。
对于除第 格和第 格以外的每个格子 ,都有一个非负整数 :
- 若 ,则第 格为空;
- 否则,第 格上有一个将棋子向左传送的传送门。
保证第 格和第 格均为空。
游戏规则
Snakes&Snakes 中的一个回合按照下列过程进行:
-
玩家掷一个六面骰子。若掷出的点数为 ,棋子向右移动 格,但不能越过第 格。换言之,若棋子原来位于第 格,则移动到
-
若棋子到达第 格,则玩家立即获胜。
-
若棋子到达第 格:
- 若 ,则进入步骤 4;
- 否则,棋子向左移动 格,到达第 格,然后再次执行步骤 3。
因此,棋子可能连续经过多个传送门。
-
若步骤 1 中掷出了 ,玩家可以在同一个回合内再次从步骤 1 开始执行;否则,本回合结束。
Margot 想知道:为了获胜,最少需要多少个回合?骰子结果可以极其不可能,只需要存在这样一种掷骰子序列即可。
输入格式
第一行输入一个整数 ,表示棋盘大小:
第二行输入 个整数 ,依次描述格子 :
输出格式
输出一个整数,表示获胜所需的最少回合数。
若无法到达第 格,输出 -1。
样例 1
10
0 1 1 1 1 1 1 0
-1
样例 2
10
1 2 1 2 0 1 1 1
1
样例 3
10
1 1 2 2 0 6 7 8
2