#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> ii;
const int INF = 1e9;
const ll LINF = 1e18;
template<typename T>
bool minimize(T& a, const T& b) {
if (b < a) {a = b; return true;}
return false;
}
const int N = 2222;
const int M = 10;
const int MX = N * M + 5;
int n, m;
vector<ii> adj[MX];
// Toạ độ 1D tương ứng với toạ độ (i, j)
int getIndex(int i, int j) {
return (i - 1) * m + j;
}
void addEdge(int u, int v, int w) {
adj[u].push_back({v, w});
adj[v].push_back({u, w});
}
struct Node {
int u; ll d;
bool operator<(const Node& other) const {
return d > other.d;
}
};
ll dist[MX]; // dist[u] = Đường đi ngắn nhất từ s đến u
void dijkstra(int s) {
for (int u = 0; u <= n * m; u++) dist[u] = LINF;
priority_queue<Node> pq;
dist[s] = 0;
pq.push({s, dist[s]});
while (!pq.empty()) {
Node front = pq.top(); pq.pop();
int u = front.u; ll d = front.d;
if (d > dist[u]) continue;
for (ii v : adj[u]) {
if (minimize(dist[v.first], dist[u] + v.second)) {
pq.push({v.first, dist[v.first]});
}
}
}
}
// Coi mỗi căn phòng là một đỉnh
// Trọng số của cạnh nối giữa 2 đỉnh chính bằng chi phí để phá
// cánh cửa ngăn giữa 2 căn phòng tương ứng với 2 đỉnh đó
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cin >> n >> m;
for (int j = 1; j <= m; j++) {
int w; cin >> w;
addEdge(0, getIndex(1, j), w);
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j + 1 <= m; j++) {
int w; cin >> w;
addEdge(getIndex(i, j), getIndex(i, j + 1), w);
}
if (i < n) {
for (int j = 1; j <= m; j++) {
int w; cin >> w;
addEdge(getIndex(i, j), getIndex(i + 1, j), w);
}
}
}
dijkstra(0);
cout << dist[n * m] << '\n';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IAoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsgIAoKdHlwZWRlZiBsb25nIGxvbmcgbGw7ICAKdHlwZWRlZiBwYWlyPGludCwgaW50PiBpaTsgIAoKY29uc3QgaW50IElORiA9IDFlOTsgIApjb25zdCBsbCBMSU5GID0gMWUxODsgIAoKdGVtcGxhdGU8dHlwZW5hbWUgVD4KYm9vbCBtaW5pbWl6ZShUJiBhLCBjb25zdCBUJiBiKSB7CglpZiAoYiA8IGEpIHthID0gYjsgcmV0dXJuIHRydWU7fQoJcmV0dXJuIGZhbHNlOyAKfQoKY29uc3QgaW50IE4gPSAyMjIyOyAKY29uc3QgaW50IE0gPSAxMDsgIApjb25zdCBpbnQgTVggPSBOICogTSArIDU7IAoKaW50IG4sIG07ICAKdmVjdG9yPGlpPiBhZGpbTVhdOyAKCi8vIFRv4bqhIMSR4buZIDFEIHTGsMahbmcg4bupbmcgduG7m2kgdG/huqEgxJHhu5kgKGksIGopCmludCBnZXRJbmRleChpbnQgaSwgaW50IGopIHsKCXJldHVybiAoaSAtIDEpICogbSArIGo7IAp9Cgp2b2lkIGFkZEVkZ2UoaW50IHUsIGludCB2LCBpbnQgdykgewoJYWRqW3VdLnB1c2hfYmFjayh7diwgd30pOyAKCWFkalt2XS5wdXNoX2JhY2soe3UsIHd9KTsgCn0KCnN0cnVjdCBOb2RlIHsKCWludCB1OyBsbCBkOyAKCWJvb2wgb3BlcmF0b3I8KGNvbnN0IE5vZGUmIG90aGVyKSBjb25zdCB7CgkJcmV0dXJuIGQgPiBvdGhlci5kOyAKCX0KfTsgCgpsbCBkaXN0W01YXTsgLy8gZGlzdFt1XSA9IMSQxrDhu51uZyDEkWkgbmfhuq9uIG5o4bqldCB04burIHMgxJHhur9uIHUKCnZvaWQgZGlqa3N0cmEoaW50IHMpIHsKCWZvciAoaW50IHUgPSAwOyB1IDw9IG4gKiBtOyB1KyspIGRpc3RbdV0gPSBMSU5GOyAKCglwcmlvcml0eV9xdWV1ZTxOb2RlPiBwcTsgCglkaXN0W3NdID0gMDsgICAKCXBxLnB1c2goe3MsIGRpc3Rbc119KTsgIAoKCXdoaWxlICghcHEuZW1wdHkoKSkgewoJCU5vZGUgZnJvbnQgPSBwcS50b3AoKTsgcHEucG9wKCk7ICAKCQlpbnQgdSA9IGZyb250LnU7IGxsIGQgPSBmcm9udC5kOyAKCgkJaWYgKGQgPiBkaXN0W3VdKSBjb250aW51ZTsgCgoJCWZvciAoaWkgdiA6IGFkalt1XSkgewoJCQlpZiAobWluaW1pemUoZGlzdFt2LmZpcnN0XSwgZGlzdFt1XSArIHYuc2Vjb25kKSkgewoJCQkJcHEucHVzaCh7di5maXJzdCwgZGlzdFt2LmZpcnN0XX0pOyAKCQkJfQoJCX0KCX0KfQoKLy8gQ29pIG3hu5dpIGPEg24gcGjDsm5nIGzDoCBt4buZdCDEkeG7iW5oCi8vIFRy4buNbmcgc+G7kSBj4bunYSBj4bqhbmggbuG7kWkgZ2nhu69hIDIgxJHhu4luaCBjaMOtbmggYuG6sW5nIGNoaSBwaMOtIMSR4buDIHBow6EgCi8vIGPDoW5oIGPhu61hIG5nxINuIGdp4buvYSAyIGPEg24gcGjDsm5nIHTGsMahbmcg4bupbmcgduG7m2kgMiDEkeG7iW5oIMSRw7MKaW50IG1haW4oKSB7Cglpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7IAoJY2luLnRpZShudWxscHRyKTsgCQoJY2luID4+IG4gPj4gbTsgCgoJZm9yIChpbnQgaiA9IDE7IGogPD0gbTsgaisrKSB7CgkJaW50IHc7IGNpbiA+PiB3OyAgCgkJYWRkRWRnZSgwLCBnZXRJbmRleCgxLCBqKSwgdyk7ICAKCX0KCglmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKCQlmb3IgKGludCBqID0gMTsgaiArIDEgPD0gbTsgaisrKSB7CgkJCWludCB3OyBjaW4gPj4gdzsgCgkJCWFkZEVkZ2UoZ2V0SW5kZXgoaSwgaiksIGdldEluZGV4KGksIGogKyAxKSwgdyk7IAoJCX0KCgkJaWYgKGkgPCBuKSB7CgkJCWZvciAoaW50IGogPSAxOyBqIDw9IG07IGorKykgewoJCQkJaW50IHc7IGNpbiA+PiB3OyAKCQkJCWFkZEVkZ2UoZ2V0SW5kZXgoaSwgaiksIGdldEluZGV4KGkgKyAxLCBqKSwgdyk7IAoJCQl9CgkJfQoJfQoKCWRpamtzdHJhKDApOyAKCgljb3V0IDw8IGRpc3RbbiAqIG1dIDw8ICdcbic7IAp9