60分dfs求调
查看原帖
60分dfs求调
751386
zhaobingcheng楼主2023/8/20 14:16
#include <bits/stdc++.h>
using namespace std;
int n,m;
char a[10010][1010];
int cx[5]={0,0,1,-1,0};
int cy[5]={1,-1,0,0,0};
bool vis[10010][10010];
int dfs(int x,int y){
	if(x==n&&y==m){
		return true;
	}
	if(a[x][y]=='.'&&vis[x][y]==0){
		vis[x][y]=1;
		for(int i=1;i<=4;i++){
			dfs(x+cx[i],y+cy[i]);
		}
	}
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
		}
	}
	if(dfs(1,1)){
		cout<<"Yes";
	}
	else{
		cout<<"No";
	}
	return 0;
}
2023/8/20 14:16
加载中...