Vượt suối

Xem dạng PDF

Gửi bài giải

Điểm: 0,25 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Problem type
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Tí muốn vượt qua một con suối bằng cách nhảy từ viên đá này sang viên đá khác. Trước mặt Tí là một hàng ~n~ viên đá, viên đá thứ ~i~ có độ cao là ~h_i~.

Tí bắt đầu từ viên đá đầu tiên. Tại mỗi viên đá thứ ~i~, Tí có thể chọn nhảy tới viên đá kế tiếp ~i + 1~ hoặc bỏ qua một viên để nhảy tới viên đá ~i + 2~. Mỗi cú nhảy có một chi phí được tính bằng ~|h_i - h_j|~, với ~j~ là viên đá mà Tí đáp xuống.

Hãy giúp Tí tìm con đường với chi phí ít nhất để vượt qua suối và tới được viên đá thứ ~n~.

Input

  • Dòng đầu tiên chứa số nguyên ~n~ là số lượng viên đá ~(1 \leq n \leq 10^5)~.
  • Dòng thứ hai chứa ~n~ số nguyên, trong đó số thứ ~i~ là chiều cao ~h_i~ của viên đá thứ ~i~ ~(1 \leq h_i \leq 10^4)~.

Output

Gồm một dòng duy nhất là chi phí nhỏ nhất để Tí có thể tới được viên đá thứ ~n~.

Ràng buộc

  • ~25\%~ số test có ~1 \leq n \leq 20~
  • ~25\%~ số test tiếp theo có ~20 < n \leq 10^3~
  • ~50\%~ số test còn lại không có ràng buộc gì thêm

Sample Test

Input 1
4
10 30 40 20
Output 1
30
Input 2
2
16 16
Output 2
0

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.