#include<stdio.h>
main()
{
int a[100][100],b[100][100],h[100][100];
int r,c,x,y;
int step=0,go;
scanf("%d%d",&r,&c);
for(x=0;x<r;x++)
for(y=0;y<c;y++)
scanf("%d",&h[x][y]);
for(x=0;x<r;x++)
for(y=0;y<c;y++)
b[x][y]=1;
do
{
go=0;
step+=1;
for(x=0;x<r;x++)
for(y=0;y<c;y++)
{
a[x][y]=b[x][y];
b[x][y]=0;
}
for(x=0;x<r;x++)
for(y=0;y<c;y++)
if(a[x][y])
{
if(x>0 && h[x][y]>h[x-1][y])
{
b[x-1][y]=1;
go=1;
}
if(x<c-1 && h[x][y]>h[x+1][y])
{
b[x+1][y]=1;
go=1;
}
if(y>0 && h[x][y]>h[x][y-1])
{
b[x][y-1]=1;
go=1;
}
if(y<r-1 && h[x][y]>h[x][y+1])
{
b[x][y+1]=1;
go=1;
}
}
}while(go);
printf("%d\n",step);
return 0;
}