问题是沿着路径移动玩家 n个正方形,从正方形1开始,并在每个步骤中向前移动。在任何 点,您可以做三件事之一。
按白色按钮向前移动2个正方形。如果 剩下不到2个正方形,则此按钮终止 游戏,您赢了。
按红色按钮向前移动3个正方形。如果 剩下不到3个正方形,则此按钮终止 游戏,您赢了。
按绿色按钮可向前移动5个正方形。如果 剩下不到5个正方形,则此按钮终止 游戏,您赢了。
如何设计算法来查找:
完成游戏所需的最少步骤
按钮才能赢。
答案 0 :(得分:0)
您可以从头到尾进行操作并应用动态编程算法:
从路径中的最后一个条目开始:
对于路径中的每个前面的条目重复此操作,每次存储从那里到获胜(如果为蓝色)的最短路径的信息
解决方案是存储在路径的第一项中的内容。当然,在某些情况下不可能赢得胜利。