热门

最新

红包

立Flag

投票

同城

我的

发布
ai_ba
ai_ba
4 年前
trueai_ba

#include<iostream>
using namespace std;
const int N =1005;
char g[N][N];
bool st[N][N];
int n;
int num1,num2;
bool flag;
int dx[4] ={1,0,-1,0},dy[4] ={0,1,0,-1};

int dfs(int x,int y)
{
int ans = 0;
if (g[x][y] == '#') ans = 1;
int k =0;
for(int i =0;i<4;i++)
{
int a =x+dx[i],b=y+dy[i];
if(a>=0&&a<n&&b>=0&&b<n&&g[a][b] == '#') ++ k;
if(a>=0&&a<n&&b>=0&&b<n &&!st[a][b])
{
st[a][b] = true;
ans += dfs(a,b);
}
}
if (k == 4) -- ans;
return ans;
}
int main()
{
cin>>n;
for(int i =0;i<n;i++)
{
for(int j =0;j<n;j++)
{
cin>>g[i][j];
if (g[i][j] == '#') ++num1;
}
}
cout << num1 << ' ' << dfs(0,0);
return 0;

}

CSDN App 扫码分享
分享
1
点赞
打赏
  • 复制链接
  • 举报
下一条:
蒸滴把我耀杨逗乐了,我在图书馆都没憋住
立即登录