洛谷P1355【奇怪的电梯】

转自我的洛谷题解

递推

想想这题可以用 记忆化搜索 ,那就!!!

a [ i ] 表示第 i 层楼上的数字。

f [ i ] [ j ] 表示第 i 个时间点时,第 j 个楼层是否可以到达。

当第 i 个时间点时,f [ i - 1 ] [ j ] 可行,那么 f [ i ] [ j + a[ j ] ]f [ i ] [ j - a[ j ] ] 也可行。//上下两个方向嘛

关于输出 -1:

当每个楼层 (except 目的楼层) 都到达过了,说明没有方法可以到达 B 楼。

我代码里意思是一样的:如果 i 从 1~n-1 都循环完了(至少到达过 n-1 个楼层了),还没有到达 B 楼,那就输出 -1呗。

代码
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/MiaoZ_/article/details/83547796