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

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.