简单题(有坑点)
2024-06-05 19:11:50
发布于:江苏
21阅读
0回复
0点赞
已修改格式
这题没染过的地方就是,没染过说明到不了
符合爆搜,可以打爆搜
#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,k[35][35];
void dfs(int x,int y){
if(x>n+1||y>n+1||y<0||x<0||k[x][y])return ;
k[x][y]=3;//标记
dfs(x,y+1);
dfs(x,y-1);
dfs(x+1,y);
dfs(x-1,y);
}
signed main(){
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)cin>>k[i][j];
}
dfs(0,0);//坑1,为啥是0,0
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(k[i][j]==3)cout<<0<<" ";
else if(k[i][j]==0)cout<<2<<" ";//没染过就输出2
else cout<<1<<" ";
}
cout<<endl;
}
return 0;
}
反例
这样从,打就会错
这里空空如也
有帮助,赞一个