社区讨论
#6号测试点TLE 蒟蒻求助~
B3625迷宫寻路参与者 3已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mhjh3wo6
- 此快照首次捕获于
- 2025/11/04 02:28 4 个月前
- 此快照最后确认于
- 2025/11/04 02:28 4 个月前
我#6号测试点TLE,代码如下
CPP#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n,m;
char maze[100][100];
int visited[100][100];
int dfs(int x,int y) {
if(x == n && y == m) {return 1;}
visited[x][y]=1;
if(maze[x][y+1] == '.' && visited[x][y+1]==0 && y+1 <= m) {
if (dfs(x, y+1) == 1) return 1;
}
if(maze[x-1][y] == '.' && visited[x-1][y]==0 && x-1 >= 1) {
if (dfs(x-1, y) == 1) return 1;
}
if(maze[x][y-1] == '.' && visited[x][y-1]==0 && y-1 >= 1) {
if (dfs(x, y-1) == 1) return 1;
}
if(maze[x+1][y] == '.' && visited[x+1][y]==0 && x+1 <= n) {
if (dfs(x+1, y) == 1) return 1;
}
return 0;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin>>n>>m;
for(int i=1;i<=n;i++) {
for(int j=1;j<=m;j++) {
cin>>maze[i][j];
}
}
if (dfs(1,1) == 1) {
cout<<"Yes"<<endl;
}
else {
cout<<"No"<<endl;
}
return 0;
}
想的用DFS来写
回复
共 2 条回复,欢迎继续交流。
正在加载回复...