HBC200189迷宫题解

一个忧伤的美男子 算法基础篇 55 0
挑战自我,勇攀编程高峰!全网最全C++题库,助您成为编程达人。
有一个nm{n*m}nm迷宫,迷宫中每个格子用0{0}0或1{1}1表示,0{0}0表示该格子可以通过,1{1}1表示该格子是个障碍物,牛妹站在格子(1,1){(1,1)}(1,1),出口在格子(n,m){(n,m)}(n,m),牛妹想要走出迷宫,但牛妹只会按以下策略走: 牛妹当前所在的格子称为当前格子 1. 如果当前格子右边没有障碍物,牛妹就向右走,否则转到2, 2.

有一个n∗m{n*m}n∗m迷宫,迷宫中每个格子用0{0}0或1{1}1表示,0{0}0表示该格子可以通过,1{1}1表示该格子是个障碍物,牛妹站在格子(1,1){(1,1)}(1,1),出口在格子(n,m){(n,m)}(n,m),牛妹想要走出迷宫,但牛妹只会按以下策略走: 牛妹当前所在的格子称为当前格子 1.      如果当前格子右边没有障碍物,牛妹就向右走,否则转到2。 2.      如果当前格子下方没有障碍物,牛妹就向下走,否则转到3。 3.      如果当前格子左边没有障碍物,牛妹就向左走,否则转到4。 4.      如果当前格子上方没有障碍物,牛妹就向上走,否则转到5。 5.      牛妹站在原地不动。 由于牛妹按这样的策略可能会无法走到出口,牛妹的好朋友小宝决定在牛妹离开格子(1,1){(1,1)}(1,1)前把迷宫中的一些非障碍格子变成障碍,帮助牛妹走出迷宫,但是小宝比较懒,他想要最小化变成障碍的非障碍格子的数量。

HBC200189迷宫题解
-第1张图片-东莞河马信息技术
(图片来源网络,侵删)
成为编程大师,不再是梦想!全网最全C++题库,助您开启编程新篇章。

标签: HBC200189迷宫题解