STONEFROG2 - Chú ếch và hòn đá 2

Xem dạng PDF

Gửi bài giải


Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, PyPy, Python, Ruby, Rust, Scratch, Swift

Có ~N~ hòn đá được đánh số ~(1,2,3,\ldots,N)~. Với mỗi ~i~ ~(1 \le i \le N)~, chiều cao của hòn đá thứ ~i~ là ~h_i~.

Ban đầu, một con ếch đứng trên hòn đá ~1~. Con ếch có thể thực hiện hành động nhảy một số lần bất kỳ cho đến khi nó đến được hòn đá ~N~.

Nếu con ếch đang đứng trên hòn đá ~i~, nó có thể nhảy sang một trong các hòn đá ~i+1, i+2, \ldots, i+K~ (miễn là chỉ số không vượt quá ~N~). Chi phí cho một lần nhảy từ hòn đá ~i~ sang hòn đá ~j~ là ~(|h_i - h_j|)~.

Hãy tìm tổng chi phí nhỏ nhất để con ếch đi từ hòn đá ~1~ đến hòn đá ~N~.


Input

  • Dòng đầu tiên chứa hai số nguyên ~(N, K)~ ~(2 \le N \le 10^5,\ 1 \le K \le 100)~
  • Dòng thứ hai chứa ~N~ số nguyên ~(h_1, h_2, \ldots, h_N)~ với ~(1 \le h_i \le 10^4)~

Output

  • In ra chi phí tối thiểu cần tìm

Sample

Input #1
5 3
10 30 40 50 20
Output #1
30
Input #2
3 1
10 20 10
Output #2
20

Hint

Ở sample test 1, con ếch sẽ nhảy theo lộ trình ~(1 \rightarrow 2 \rightarrow 5)~

Chi phí tương ứng là: ~(|10 - 30| + |30 - 20| = 30)~


Problem source: DP Contest AtCoder


Bình luận

Please read the guidelines before commenting.


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