一道新手遇见的难题
有人设计了一个可以前进或后退的机器人,该机器人在每个位置i会得到一个移动的指令Ki(i=1,2,3……N),聪明的机器人自己会判断是要前进Ki步还是后退Ki步。例如:给定指令序列(3 3 1 2 5),表示机器人在第1个位置时,可以前进3步到第4个位置,此时后退是不起作用的,因为出界;机器人在第2个位置时,可以前进3步到第5个位置,此时后退是不起作用的,因为出界;机器人在第3个位置时,可以前进1步到第4步个位置,也可以后退1步到第2个位置,等等。
你认为,对给定的两个位置A,B,聪明的机器人从A位置走到B位置至少要判断几次?
【标准输入】
第一行:M 表示一下有M组测试数据(0<M<=8)
接下来每组有两行数据
头一行:N A B (1<=N<=50, 1<=A,B<=N)
下一行:K1 K2 …… Kn (0<=Ki<=N)
【标准输出】
输出有M行,第行为第组测试数据的最少判断次数,若无法到达,则输出-1。
【样例】
标准输入 标准输出
2 3
5 1 5
3 3 1 2 5 -1
8 5 3
1 2 1 5 3 1 1 1
先说谢谢