Chú ếch vượt dãy đá
Xem dạng PDF
Gửi bài giải
Điểm:
6,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Có ~N~ phiến đá nằm theo thứ tự từ ~1~ đến ~N~. Độ cao của phiến đá thứ ~i~ là ~h_i~. Ban đầu, một chú ếch đứng ở phiến đá thứ ~1~.
Từ phiến đá thứ ~i~, chú ếch có thể nhảy tới một phiến đá thứ ~j~ ở phía trước, sao cho ~1 ≤ j - i ≤ K~. Chi phí của mỗi cú nhảy là ~|h_i - h_j|~.
Hãy tính tổng chi phí nhỏ nhất để chú ếch đi từ phiến đá thứ ~1~ đến phiến đá thứ ~N~.
Input
- Dòng đầu gồm hai số nguyên ~N~, ~K~.
- Dòng thứ hai gồm ~N~ số nguyên ~h_1, h_2, ..., h_N~.
Output
In ra tổng chi phí nhỏ nhất để chú ếch tới phiến đá thứ ~N~.
Giới hạn
- ~2 ≤ N ≤ 10^5~.
- ~1 ≤ K ≤ 100~.
- ~1 ≤ h_i ≤ 10^4~.
Ví dụ
Input
5 3
10 30 40 50 20
Output
30
Giải thích ví dụ
Chú ếch có thể nhảy theo đường đi ~1 → 2 → 5~.
Tổng chi phí là:
~|10 - 30| + |30 - 20| = 20 + 10 = 30~.
Không có cách di chuyển nào từ phiến đá thứ ~1~ đến phiến đá thứ ~5~ với tổng chi phí nhỏ hơn.
Bình luận