#include<bits/stdc++.h>
using namespace std;
int a[1010][1010];
int a2[1010][1010];
int main()
{
int n,m;
cin>>n>>m;
char x;
for(int i=0;i<=n+1;i++)
for(int j=0;j<=m+1;j++)
a[i][j]=1;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>x;
if(x=='#') a[i][j]=0;
else a2[i][j]=1;
}
}
int maxn=0,h,l;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
if(a2[i][j]==0){
int k=0;
if(a2[i-1][j]==1) k++;
if(a2[i+1][j]==1) k++;
if(a2[i][j-1]==1) k++;
if(a2[i][j+1]==1) k++;
if(k>maxn){
maxn=k;
h=i;
l=j;
}
}
a[h][l]=1;
int ans=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
if(a[i][j]==1)
if(a[i-1][j]==1 && a[i+1][j]==1 && a[i][j-1]==1 && a[i][j+1]==1)
ans++;
cout<<ans;
return 0;
}
60分请求各位大神帮助,总觉得不对劲,但又查不出问题......码风过乱请各位大神谅解。感谢您的帮助!