[题目描述]
编程计算由“”号围成的下列图形的面积。面积计算方法是统计号所围成的闭合曲线中水平线和垂直线交点的数目。如下图所示,在10×10的二维数组中,有“*”围住了15个点,因此面积为15。
输入
10×10的图形。 输出
输出面积。 样例输入
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
样例输出
15
using namespace std;
int a[15][15],hx[4]={0,1,0,-1},hy[4]={1,0,-1,0},sum;
int dfs(int x,int y){
if(x<0&&x>11&&y<0&&y>11) a[x][y]=1;
else return ;
for(int i=0;i<4;i++){
int xz=x+hx[i],yz=y+hy[i];
dfs(xz,yz);
}
}
int main(){
for(int i=1;i<=10;i++){
for(int j=1;j<=10;j++){
cin>>a[i][j];
}
}
dfs(0,0);
for(int i=1;i<=10;i++){
for(int j=1;j<=10;j++){
if(a[i][j]==0) sum++;
}
}
cout<<sum;
}```