#include "bits/stdc++.h"
using namespace std;
#define rep(i,a,n) for(int i=a;i<=n;i++)
#define int long long
const int P = 21, D = 11, mx = 10;
int dp[P][D][(1 << mx) + 5],p,d,val[D+5][P+5];
void smin(int &a, int b){a = min(1LL*a,1LL*b);}
void solve(){
cin >> p >> d;
int out = 1e18;
rep(i,1,d) rep(j,1,p) cin >> val[i][j];
rep(i, 1, p){
rep(j, 1, d){
int st = (1LL << (j-1));
rep(mask, 0, (1<<d) -1){
if(mask & st){
smin(dp[i][j][mask],val[j][i] + dp[i-1][j][mask]);
}
else{
rep(k,1,d){
if(j == k) continue;
smin(dp[i][j][mask|st],val[j][i]+dp[i-1][k][mask]);
}
}
}
}
}
rep(i,1,d) rep(mask,1,(1<<d)-1){
smin(out,dp[p][i][mask]);
}
cout << out << "\n";
}
int32_t main(){
ios_base::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
rep(i,1,P-1) memset(dp[i],0x3f,sizeof dp[i]);
int tst = 1; while(tst--){
solve();
}
}