#include<bits/stdc++.h>
using namespace std;
long long a[2001][2001],f[2001][2001];
int main()
{
memset(f,127,sizeof f);
int n,m;
cin>>n>>m;
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
cin>>a[i][j];
}
f[i][1]=a[i][1];
}
for(int j=2;j<=n;j++){
for(int i=1;i<=m;i++){
if(i!=1) f[i][j]=min(f[i-1][j-1],f[i-1][j])+a[i][j];
else f[i][j]=min(f[m][j-1],f[i][j-1])+a[i][j];
}
}
// for(int i=1;i<=m;i++){
// for(int j=1;j<=n;j++){
// cout<<f[i][j]<<" ";
// }
// cout<<endl;
// }
long long ans=2*1e9;
for(int i=1;i<=m;i++){
ans=std::min(ans,f[i][n]);
}
cout<<ans<<endl;
return 0;
}