Problem G: 奇怪的电梯

"
Time Limit $1$ 秒/Second(s) Memory Limit $512$ 兆字节/Megabyte(s)
提交总数 $43$ 正确数量 $33$
裁判形式 标准裁判/Standard Judge 我的状态 尚未尝试
难度 分类标签 搜索
有一个奇怪的电梯,一共N层,每一层都有一个对应的数字Ki(1 <= Ki <= N)。电梯在第i 层停靠时不能选择去哪一层,只能按向上或者向下按钮,然后电梯就会相应的往上或者往下运行到i+Ki层或者i-Ki层,并且电梯不能运行到超过N层或者低于1层。现在问题是:你在A层,想去B层,你必须按向上或者向下按钮至少多少次才能如愿?
有多组测试数据。
每组测试数据有两行。
第一行包含3个整数N,A,B(1 <= N ,A,B <= 200)。
第二行有N个整数,分别是K1,K2,...Kn。
输入以一个单独的0结束。
输出从A层到B层必须至少按下按钮的次数。如果从A层不能到达B层,输出-1。
5 1 5
3 3 1 2 5
0
3