跳就完事了
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
背景
探险家17又来跳了,不过这次总共有两层,同样'_'
代表陆地,空格代表陷阱。跳法规则:在同一层一次可以向前跳一格或两格。向上跳:当你在下面的一层且你头顶正上方有'_'
时才可以往上跳。向下跳:你可以一次性往前跳至多三格后回到下面那层。超级跳:只有一次且不支持跨层使用,一次性往前跳3格。不支持往回跳,只有踩到下面那层的陷阱才算游戏结束。
输入
先是一个正整数n,5<n<=15,然后是两行长度为n的字符串,其中只有空格和'_'
两种字符。
开始时的位置为下面那层的第一个,因此,第二行的第一个必须为'_'
。
终点可能在第一层也可能在第二层,因此,这两个字符串至少有一个以'_'
结尾。
输出
17跳到终点的最少步数。如果17跳不到终点,则输出-1。
样例输入1
9
_ _ _ _
_ __ __
样例输出1
5
样例输入2
9
_ _ _ _
_ _ _ _
样例输出2
-1
提示
样例1的一种跳法:向上跳-向下跳3-向上跳-向右超级跳3-向右跳2。
这里再对跳法写一个说明,假设你的初始位置是a[0][0]
。
向下跳:你可以跳到a[1][0]
,a[1][1]
,a[1][2]
,a[1][3]
。
向前跳:你可以跳到a[0][1]
,a[0][2]
。
超级跳:你可以跳到a[0][1]
,a[0][2]
,a[0][3]
。
起点为a[1][0]
,终点为a[0][n-1]
或a[1][n-1]
,可以同时有两个终点。