#G00004. Mê cung số (Number Maze)

Mê cung số (Number Maze)

Mê cung số

Nguồn: UVa Online Judge

Phiên bản: Phước Hưng OJ Extended

Đề bài

Một mê cung số được biểu diễn bởi một ma trận gồm NN hàng và MM cột. Mỗi ô của ma trận chứa một số nguyên từ 00 đến 99, biểu diễn chi phí phải trả khi đi vào ô đó.

Từ một ô, bạn chỉ có thể di chuyển sang một ô kề cạnh theo một trong bốn hướng:

  • lên trên;
  • xuống dưới;
  • sang trái;
  • sang phải.

Không được di chuyển theo đường chéo và không được đi ra ngoài mê cung.

Bạn bắt đầu tại ô ở góc trên bên trái, tức ô (1,1)(1,1), và cần đi đến ô ở góc dưới bên phải, tức ô (N,M)(N,M).

Chi phí của một đường đi bằng tổng giá trị của tất cả các ô mà đường đi đi qua, bao gồm cả ô bắt đầu (1,1)(1,1) và ô kết thúc (N,M)(N,M).

Hãy tìm chi phí nhỏ nhất có thể để đi từ ô (1,1)(1,1) đến ô (N,M)(N,M).

Minh họa

Xét mê cung gồm 44 hàng và 55 cột sau:

Trong ma trận trên:

  • ô bắt đầu là (1,1)(1,1), có chi phí 00;
  • ô kết thúc là (4,5)(4,5), có chi phí 55;
  • từ mỗi ô chỉ có thể chuyển sang các ô chung cạnh với nó.

Ví dụ, từ ô (2,3)(2,3) có thể di chuyển đến các ô (1,3)(1,3), (3,3)(3,3), (2,2)(2,2) hoặc (2,4)(2,4).

Đối với mê cung minh họa này, chi phí nhỏ nhất để đi từ góc trên bên trái đến góc dưới bên phải là 2424.

Input

Dòng đầu tiên chứa số nguyên NN, là số hàng của mê cung.

Dòng thứ hai chứa số nguyên MM, là số cột của mê cung.

NN dòng tiếp theo mô tả ma trận chi phí. Dòng thứ ii chứa MM số nguyên

ai,1,ai,2,…,ai,Ma_{i,1},a_{i,2},\ldots,a_{i,M},

trong đó ai,ja_{i,j} là chi phí của ô ở hàng ii, cột jj.

Các số trên cùng một dòng được phân cách bởi dấu cách.

Mỗi file Input chỉ chứa một mê cung.

Output

In ra một số nguyên duy nhất: chi phí nhỏ nhất để đi từ ô (1,1)(1,1) đến ô (N,M)(N,M).

Subtask

Trong tất cả các Subtask:

0≤ai,j≤90 \le a_{i,j} \le 9.

Đặt V=N⋅MV=N\cdot M là tổng số ô của mê cung.

  • Subtask 1 — 10% : 1≤N,M≤9991 \le N,M \le 999; V≤18V \le 18.
  • Subtask 2 — 20% : 1≤N,M≤9991 \le N,M \le 999; V≤2500V \le 2500.
  • Subtask 3 — 30% : 1≤N,M≤9991 \le N,M \le 999; V≤2⋅105V \le 2\cdot10^5.
  • Subtask 4 — 40% : 1≤N,M≤9991 \le N,M \le 999; V≤998001V \le 998001.

Ví dụ

Ví dụ 1

Input

4
5
0 3 1 2 9
7 3 4 9 9
1 7 5 5 3
2 3 4 2 5

Output

24

Giải thích

Mê cung có 44 hàng và 55 cột.

Một đường đi đạt chi phí 2424 là:

$(1,1)\rightarrow(1,2)\rightarrow(1,3)\rightarrow(2,3)\rightarrow(3,3)\rightarrow(4,3)\rightarrow(4,4)\rightarrow(4,5)$.

Các giá trị của những ô trên đường đi lần lượt là:

0,3,1,4,5,4,2,50,3,1,4,5,4,2,5.

Tổng chi phí bằng:

0+3+1+4+5+4+2+5=24.0+3+1+4+5+4+2+5=24.

Không tồn tại đường đi hợp lệ nào từ (1,1)(1,1) đến (4,5)(4,5) có tổng chi phí nhỏ hơn, vì vậy kết quả cần in là 2424.

Ví dụ 2

Input

1
6
0 1 2 3 4 5

Output

15

Giải thích

Mê cung chỉ có một hàng gồm 66 ô.

Từ ô (1,1)(1,1) đến ô (1,6)(1,6), đường đi bắt buộc phải lần lượt đi qua:

$(1,1)\rightarrow(1,2)\rightarrow(1,3)\rightarrow(1,4)\rightarrow(1,5)\rightarrow(1,6)$.

Tổng chi phí là:

0+1+2+3+4+5=15.0+1+2+3+4+5=15.

Do đó kết quả là 1515.