
chipMoving
Bạn được cho một lưới các số nguyên không âm, và một con chíp được đặt ở ô trên cùng bên trái. Mỗi lượt, con chíp có thể di chuyển sang ô bên phải hoặc ô bên dưới. Chi phí di chuyển bằng với số được ghi trên ô kết quả.
Ngoài ra còn có một số chi phí bổ sung nếu bạn thay đổi hướng giữa hai lần di chuyển liên tiếp. Để đổi hướng, bạn sẽ phải trả thêm chi phí là 10
.
Số lượng điểm tối thiếu cần để đến góc dưới cùng bên phải của lưới là bao nhiêu?
Giả sử bạn không trả cho việc đứng ở ô phía trên bên trái lúc đầu, vì vậy số ở trên ô đó không tính.
Ví dụ
- Với
grid = [[ 0, 0, 99, 99, 99],
[99, 0, 0, 0, 99],
[99, 99, 99, 0, 99],
[99, 99, 99, 0, 99],
[99, 99, 99, 0, 0]]
đầu ra làchipMoving(grid) = 40
.
Bạn có thể tránh tất cả ô99
nhưng bạn cần đổi hướng4
lần.
Đầu vào/Đầu ra
-
[giới hạn thời gian chạy] 0.5 giây
-
[đầu vào] array.array.integer matrix
Một ma trận các số nguyên không âm.
Điều kiện tiền đề:
1 ≤ matrix.length ≤ 100
,1 ≤ matrix[0].length ≤ 100
,0 ≤ matrix[i][j] ≤ 2000
. -
[đầu ra] integer
Post Comment