#include<bits/stdc++.h>
using namespace std;
int l,k,ans=1000000000;
char c[101][101];
bool p[101][101]={0};
int f[101][101]={0};
int main()
{
//freopen("nfs.in","r",stdin);
//freopen("nfs.out","w",stdout);
scanf("%d%d",&l,&k);
for(int i=1;i<=l;i++)
{
for(int j=1;j<=k;j++)
{
cin >> c[i][j];
p[i][j]=c[i][j]-'0';
}
}
l++;
for(int i=1;i<=k;i++)
p[l][i]=0,f[l][i]=0;
for(int t=l-1;t>=1;t--)
{
for(int i=l;i>1;i--)
{
for(int j=1;j<=k;j++)
{
p[i][j]=p[i-1][j];
}
}
for(int i=1;i<=k;i++) p[1][i]=0;
for(int i=1;i<=k;i++)
{
int x=10000000,y=10000000,z=10000000;
if(i>1) x=f[t+1][i-1];
y=f[t+1][i];
if(i<k) z=f[t+1][i+1];
f[t][i]=min(min(x,y),z);
if(p[t][i]==1)
{
f[t][i]++;
}
if(t==1)
{
ans=min(ans,f[t][i]);
}
}
}
printf("%d\n",ans);
return 0;
}