Trồng cây

Xem dạng PDF

Gửi bài giải

Điểm: 0,20 (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++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Dọc theo một tuyến phố thẳng có ~n~ vị trí kế tiếp nhau để trồng cây đánh số từ ~l~ đến ~n~. Hiện tại chỉ có vị trí thứ ~k(1 \leq k \leq n)~ đã trồng một cây có độ cao là ~a_k~, còn các vị trí khác để trống. Theo dự kiến, người ta sẽ trồng cây có độ cao ~a_i~ tại vị trí thứ ~i(1 \leq i \leq n, i \neq k)~. Tuy nhiên, để tăng vẻ đẹp cho hàng cây, người ta muốn tìm một phương án sắp xếp các cây cần trồng vào các vị trí thích hợp (trừ vị trí ~k~) sao cho tổng tất cả các độ chênh lệch của hai cây trồng liền nhau là nhỏ nhất. Độ chênh lệch của hai cây được trồng tại hai vị trí liền nhau là giá trị tuyệt đối hiệu độ cao của hai cây.

Yêu cầu: Tìm giá trị nhỏ nhất ~t~ của tổng tất cả các độ chênh lệch của hai cây trồng liền nhau.

Dữ liệu:

  • Dòng đầu chứa hai số nguyên dương ~n~ và ~k, n \leq 10^3, 1 \leq k \leq n~;
  • Dòng sau chứa ~n~ số nguyên dương ~a_i, 1 \leq i \leq n~, là độ cao của cây thứ ~i~ theo dự kiến. Mỗi số đều không vượt quá ~10^6~.

Kết quả:

  • Ghi ra số ~t~ tìm được.

Ví dụ:

Sample Input
5  2
7  3  4  2  6
Sample Output
5

Giải thích:

Ví trí 1 trồng cây có độ cao 2, vị trí 3 trồng cây độ cao 4, vị trí 4 trồng cây độ cao 6 và vị trí 5 trồng cây độ cao 7. Tổng độ chênh lệch nhỏ nhất là 5.


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.