P1162不是用广搜吗?
  • 板块灌水区
  • 楼主jiwy
  • 当前回复8
  • 已保存回复9
  • 发布时间2024/7/12 20:26
  • 上次更新2024/7/12 21:53:14
查看原帖
P1162不是用广搜吗?
1284998
jiwy楼主2024/7/12 20:26

P1162

#include<bits/stdc++.h>
using namespace std;
int n,a[35][35],b[35][35]={0},dx[4]={0,0,1,-1},dy[4]={1,-1,0,0};
void bfs(int x,int y){
	b[x][y]=1;
	for (int i=0;i<4;i++){
		int tx=x+dx[i],ty=y+dy[i];
		if (tx>n||ty<n||tx<1||ty<1){
			continue;
		}
		if (tx==n||ty==n||tx==1||ty==1||a[tx][ty]==1){
			b[tx][ty]=1;
		}
		bfs(tx,ty);
	}
}
int main(){
	scanf("%d",&n);
	for (int i=1;i<=n;i++){
		for (int j=1;j<=n;j++){
			scanf("%d",&a[i][j]);
		}
	}
	bfs(1,1);
	for (int i=1;i<=n;i++){
		for (int j=1;j<=n;j++){
			if (b[i][j]==0&&a[i][j]==0){
				a[i][j]=2;
			}
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
	return 0;
}
2024/7/12 20:26
加载中...