保姆深搜题解
2025-03-08 08:29:26
发布于:上海
17阅读
0回复
0点赞
丝滑刘畅,全部AC,别忘点个赞
#include <bits/stdc++.h>
using namespace std;
int n,m,x,y;
int dx[4] = {0,1,0,-1};//方向数组(x):上下左右
int dy[4] = {1,0,-1,0};//方向数组(y):上下左右
void dfs(int x,int y){//深搜开始
for(int i = 0;i < 4;i++){
int nx = x + dx[i];//依次定义上下左右的横坐标
int ny = y + dy[i];//依次定义上下左右的竖坐标
if(nx >= 1 && ny >= 1 && nx <= n && ny <= m){//判断有没有超过迷宫
cout << nx << " " << ny << endl;//否,就输出横坐标和竖坐标
}else{
cout << "NA" << endl;//如果超过了,就输出'NA'
}
}
}
int main(){
cin >> n >> m >> x >> y;
dfs(x,y);//利用dfs函数
return 0;//结束
}
这里空空如也
有帮助,赞一个