#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define loop(i,a,b) for(int i=a;i pii; typedef vector vi; typedef vector vvi; typedef vector vp; typedef vector vvp; typedef vector vs; typedef vector vd; typedef tuple tp; typedef vector vt; typedef vector vvd; typedef pair pip; typedef vectorvip; const double PI=acos(-1); const double EPS=1e-7; const int inf=1e8; const ll INF=1e16; int dx[]={0,1,0,-1}; int dy[]={1,0,-1,0}; int co; vs in; void dfs(int a,int b,int c){ in[a][b]=c; rep(i,4){ int nx=a+dx[i]; int ny=b+dy[i]; if(in[nx][ny]=='.')dfs(nx,ny,c); } } int main(){ int n,m; cin>>m>>n; in=vs(n); rep(i,n)cin>>in[i]; rep(i,n)rep(j,m)if(in[i][j]=='.')dfs(i,j,co++); int out=inf; rep(i,n)rep(j,m)rep(k,n)rep(l,m) if(in[i][j]==0&&in[k][l]==1)out=min(out,abs(i-k)+abs(j-l)); cout<