https://www.luogu.com.cn/discuss/new?forum=academics
#include<bits/stdc++.h>
using namespace std;
int n,m;
char a[500][500];
void f1()
{
bool b;
for(int h=0;h<n*m;h++)
{
b=true;
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(a[i][j]=='.')
{
if(a[i-1][j]=='!'||a[i+1][j]=='!'||a[i][j-1]=='!'||a[i][j+1]=='!')
{
a[i][j]='!';
b=false;
}
}
}
}
if(b=true)
break;
}
}
int main()
{
//freopen("in.in","r",stdin);
//freopen("out.out","w",stdout);
int ans=0;
scanf("%d %d",&n,&m);
for(int i=0;i<n;i++)
{
getchar();
for(int j=0;j<m;j++)
{
char c;
c=getchar();
if(c=='0')
a[i][j]='#';
else
if(c<='9'&&c>='1')
a[i][j]='.';
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
if(a[i][j]=='.')
{
a[i][j]='!';
ans+=1;
f1();
}
}
}
printf("%d",ans);
return 0;
}