首页 > 试题广场 >

迷宫寻路

[编程题]迷宫寻路
  • 热度指数:1043 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}旺仔哥哥被困在一个 n\times m矩形迷宫里。每个格子要么是空地 (用符号 `.` 表示),要么是墙 (用符号 `#` 表示)。旺仔哥哥只能从一个空地移动到其上下左右相邻的空地。
\hspace{15pt}已知旺仔哥哥的起点为左上角 (1,1),终点为右下角 (n,m)。请判断他是否能够到达终点。

输入描述:
\hspace{15pt}第一行输入两个正整数 n,m\ (1\leqq n,m\leqq 100)
\hspace{15pt}接下来的 n 行每行输入一个长为 m 的仅包含字符 `.` 与 `#` 的字符串,描述整个迷宫。
\hspace{15pt}保证起点 (1,1) 和终点 (n,m) 均为空地。


输出描述:
\hspace{15pt}若旺仔哥哥可以走到终点,则输出单词 \text{Yes};否则输出 \text{No}
示例1

输入

3 5
.##.#
.#...
...#.

输出

Yes

说明

路线如下:(1,1)\to (2,1) \to (3,1) \to (3,2)\to (3,3) \to (2, 3) \to (2, 4) \to (2, 5) \to (3, 5)
头像 papybara
发表于 2025-08-19 17:40:48
n,m = map(int,input().split()) desk = [list(input().strip()) for _ in range(n)] x,y = 0,0 pos = [(0,0)] dirs = [(1,0),(0,1),(-1,0),(0,-1)] while True 展开全文
头像 ikun_ac
发表于 2025-08-08 21:53:14
题目链接 迷宫寻路 题目描述 给定一个 的矩形迷宫。每个格子要么是空地 .,要么是墙 #。只能在空地间按上下左右四个方向移动。起点为左上角 ,终点为右下角 。判断是否存在一条路径从起点到终点。 输入: 第一行两个正整数 、 接下来 行,每行一个长为 的仅包含 . 与 # 的字符串,表示迷宫 展开全文
头像 N_zip
发表于 2025-07-16 09:27:16
#include <bits/stdc++.h> using namespace std; char a[110][110]; int n, m; bool vis[110][110]; int dx[] = {0, 0, 1, -1}; int dy[] = {1, -1, 0, 0 展开全文
头像 学习小生
发表于 2025-08-28 16:08:35
n , m = map(int,input().split()) arr = [] for i in range(n): arr.append(list(input())) graph = {} for i in range(n): for j in range(m): 展开全文
头像 饥饿的中国人offer多多
发表于 2025-08-07 18:48:37
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static int n, m; public static String ans = " 展开全文
头像 zime_www
发表于 2025-07-28 22:56:52
#include <bits/stdc++.h> #define fi first #define se second using namespace std; using LL = long long; constexpr int N = 2e5 + 5; int n, m; stri 展开全文
头像 zime_www
发表于 2025-07-28 23:01:14
#include <bits/stdc++.h> #define fi first #define se second using namespace std; using LL = long long; constexpr int N = 2e5 + 5; int n, m; stri 展开全文
头像 Whhhhhhhhhhhhhh
发表于 2025-07-10 15:15:25
#include <iostream> using namespace std; char a[110][110];int vis[110][110]; int n,m; int dx[] = {1,0,-1,0}; int dy[] = {0,-1,0,1}; void dfs(int 展开全文
头像 进击的无核白希望奇迹发生
发表于 2025-07-27 13:25:03
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () = 展开全文
头像 进击的无核白希望奇迹发生
发表于 2025-07-27 13:25:07
const rl = require("readline").createInterface({ input: process.stdin }); var iter = rl[Symbol.asyncIterator](); const readline = async () = 展开全文