Giảm độ cao
Đề bài
Mô tả
Cho một bảng số nguyên kích thước . Bạn đang đứng ở ô và muốn đi tới ô . Mỗi bước, bạn chỉ có thể đi từ ô sang ô (xuống) hoặc (sang phải). Ngoài ra có một ràng buộc: nếu giá trị (độ cao) của ô hiện tại bằng thì ô đi tiếp theo phải có giá trị bằng đúng .
Trước khi xuất phát, bạn được phép thực hiện một số thao tác. Mỗi thao tác, bạn chọn một ô bất kỳ rồi giảm giá trị của ô đó đi (tức là gán ). Giá trị của ô sau khi giảm có thể nhỏ hơn hoặc bằng . Bạn cũng được phép giảm giá trị của ô .
Hãy tính số thao tác giảm tối thiểu cần thực hiện để tồn tại ít nhất một đường đi hợp lệ từ ô tới ô . Dữ liệu đảm bảo luôn có đáp án.
Bạn phải xử lý bộ dữ liệu độc lập.
Dữ liệu vào
Dòng đầu chứa một số nguyên — số bộ dữ liệu.
Với mỗi bộ dữ liệu:
- Dòng đầu chứa hai số nguyên và — số dòng và số cột của bảng.
- dòng tiếp theo, mỗi dòng chứa số nguyên; số thứ trên dòng thứ là .
Dữ liệu ra
Với mỗi bộ dữ liệu, in ra một dòng chứa một số nguyên — số thao tác giảm tối thiểu cần thực hiện.
Ràng buộc
- Tổng trên tất cả các bộ dữ liệu không vượt quá .
- Tổng trên tất cả các bộ dữ liệu không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 4 1 2 3 4 5 6 7 8 9 10 11 12 5 5 2 5 4 8 3 9 10 11 5 1 12 8 4 2 5 2 2 5 4 1 6 8 2 4 2 2 2 100 10 10 1 1 2 123456789876543 987654321234567 1 1 42 |
9 49 111 864197531358023 0 |
Bộ 1: chọn đường ; phải giảm và , tổng thao tác. Bộ cuối: bảng — không cần đi đâu, đáp án bằng . |
| 1 1 1 1000000000000000 |
0 | Bảng : không cần thao tác nào vì xuất phát đã trùng đích. |
Bình luận