思路
全部设为全局变量,用void写DFS函数,参数为i,j
DFS函数
void类型,参数为坐标,所有内容均为全局变量
分成三部分
1.判断是否已经访问过,若是,直接返回
2.访问操作
3.递归操作
void DFS(int i,int j)
{
//1
if(room[i][j])//如果room!=0,直接返回
return;
//2
blocknum++;//每找到一个相联的、未访问的方块,房间方块数++
room[i][j]=roomnum;
//3
if(!(block[i][j]&1))//没有西墙,注意括号,!优先于&
DFS(i,j-1);
if(!(block[i][j]&2))//没有北墙
DFS(i-1,j