蓝桥杯全球变暖那题,题号178 我这个代码为什么只能过一个点 检查好几遍了 又没有人看下
#include
using namespace std;
const int N=1010;
char mp[N][N];
bool vis[N][N]={0};
int dx[]={0,1,0,-1};
int dy[]={1,0,-1,0};
bool dfs(int x,int y){
vis[x][y]=1;
if(mp[x][y-1]=='#'&&mp[x][y+1]=='#'&&mp[x+1][y]=='#'&&mp[x-1][y]=='#')return false;
for(int i=0;i<4;i++){
int tx=x+dx[i];
int ty=y+dy[i];
if(mp[tx][ty]=='#'&&vis[tx][ty]==0){
dfs(tx,ty);
}
}
return true;
}
int main()
{
// 请在此输入您的代码
int n;
cin>>n;
int res=0;
for(int i=0;i>mp[i];
for(int i=0;i0;j'#'&&vis[i][j]==0&&dfs(i,j))res++;
}
cout<0;
}