读入迷宫的地图,使用二维数组 aaa 表示,其中 111 表示可以通过的位置, 000 表示障碍物或已访问过的位置, 222 表示守卫的位置。
使用优先队列 priorityprioritypriority _ queuequeuequeue 进行广度优先搜索,队列中的元素是节点 NodeNodeNode ,包含当前位置 ( xxx , yyy ) 和到达当 前位置所需的时间 ddd 。
从起始位置开始,依次按照上、右、下、左四个方向进行搜索。如果新位置是可以通过的位置,就将该新位置加入队列,并将该位置标记为已访问。
搜索过程中,如果到达终点位置 ( exexex , eyeyey ),则输出当前时间 ddd ,表示最少需要花费的时间。
如果队列为空而没有到达终点位置,则输出 YouYouYou cancancan ' ttt savesavesave MengxinMengxinMengxin ,表示无法救出被困者。