Cho một lưới ~n \times n~. Mỗi ô có giá trị là ~a_{i, j}~ (~0 \le |a_{i, j}| \le 10^3~).
Bạn đang đứng tại vị trí ~(1, 1)~ và nhiệm vụ của bạn phải di chuyển tới vị trí ~(n, n)~ cho trước.
Bạn có thể được lựa chọn một trong ba cách đi như sau:
- Đi sang ô kề phải. (→)
- Đi sang ô kề dưới. (↓)
- Đi sang ô đi theo đường chéo xuống phải. (↘)
Tuy nhiên, bạn bị giới hạn bởi số lần ~c~ với cách đi thứ ba. Hỏi bạn có thể đi như nào mà tổng tất cả các giá trị của các ô bạn đi qua là lớn nhất mà số lần đi theo đường chéo không đi quá ~c~ lần? Lưu ý, mỗi ô chỉ được đi qua đúng một lần.
Lưu ý: Giá trị của ô ~a_{1, 1}~ cũng được tính vào kết quả.
INPUT
Dòng đầu tiên ghi hai số nguyên ~n, c~ (~2 \le n \le 300, 0 \le c \le 10^9~).
~n~ dòng tiếp theo, dòng thứ ~i~ gồm ~n~ số nguyên ~a_{i, j}~ (~0 \le |a_{i, j}| \le 10^3~)
OUTPUT
Dòng duy nhất là đáp số của bài toán trên.
SAMPLE INPUT 1
3 1
0 1 1
1 1 1
1 1 1
SAMPLE OUTPUT 1
4
SAMPLE INTPUT 2
2 1
0 2
2 3
SAMPLE OUTPUT 2
5
SUBTASKS
Subtask | Điểm | Ràng buộc |
---|---|---|
1 | ~30~ | ~n \le 3~. |
2 | ~30~ | ~n \le 10~. |
3 | ~40~ | Không có ràng buộc gì thêm. |
Bình luận