P1162 填涂颜色

题的网址 https://www.luogu.com.cn/problem/P1162
其中较简单的没注释
代码如下
`#include

include

include

using namespace std;
int h[10]={0,0,1,-1,0};
int p[10]={0,1,0,0,-1};
int n,m,a[101][101];
void op(int x,int y){//最初值在主函数里
int px,py;
for(int i=1;i<=4;i++){
px=x+h[i];
py=y+p[i];
if(px>=0&&py>=0&&px<=n+1&&py<=n+1&&a[px][py]0){//有没有超出数组
a[px][py]=2;//在数组里的判断
op(px,py);//重新定义x和y的值
}
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
cin>>a[i][j];
}
}
op(0,0);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[i][j]
2){
cout<<"0"<<" ";
}else{
if(a[i][j]==0){
cout<<"2 ";
}else{
cout<<"1 ";
}
}
}
cout<<endl;
}

return 0;

}`

posted @ 2025-07-17 09:17  chang507  阅读(7)  评论(0)    收藏  举报