Algorithm 找到完成路径的最小步数的算法
问题是沿着一条路径移动玩家 n个方块中,从方块1开始,每一步向前移动。无论如何 重点是,你可以做三件事中的一件Algorithm 找到完成路径的最小步数的算法,algorithm,optimization,dynamic,Algorithm,Optimization,Dynamic,问题是沿着一条路径移动玩家 n个方块中,从方块1开始,每一步向前移动。无论如何 重点是,你可以做三件事中的一件 按白色按钮向前移动2个方块。如果 剩下不到2个方块,则此按钮终止 这场比赛你赢了 按红色按钮向前移动3个方块。如果 剩下的方块数少于3个,则此按钮终止 这场比赛你赢了 按绿色按钮向前移动5格。如果 如果剩下不到5个方块,则此按钮终止 这场比赛你赢了 规则:每个正方形都涂上蓝色和绿色。 如果玩家停在绿色广场上。他输了 如何设计算法来查找: 完成游戏所需的最小步骤 需要按下按钮才能获胜
- 按白色按钮向前移动2个方块。如果 剩下不到2个方块,则此按钮终止 这场比赛你赢了
- 按红色按钮向前移动3个方块。如果 剩下的方块数少于3个,则此按钮终止 这场比赛你赢了
- 按绿色按钮向前移动5格。如果 如果剩下不到5个方块,则此按钮终止 这场比赛你赢了
您可以从头到尾反向工作,并应用动态规划算法: 从路径中的最后一个条目开始:
- 如果是蓝色:
- 如果在此之后少于5个位置:将绿色移动(5个步骤)链接到该条目
- 否则,请检查路径(已处理)中前面2、3和5的每个点:选择链接有最佳解决方案(最少移动)的点。使用相应的移动(2=白色,3=等)扩展(预先结束)该解决方案,并将该信息存储在当前条目中
解决方案是存储在路径的第一个条目中的内容。当然,有些情况下不可能获胜。您遇到的具体问题是什么?你能展示一下你的尝试吗?