Submit solution


Points: 0.94 (partial)
Time limit: 1.0s
Memory limit: 512M
Input: stdin
Output: stdout

Problem source:
Campion 2005
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Một ngày thu đẹp trời, Radu và Mars nhận ra rằng khu vườn của họ chứa đầy lá rụng. Họ quyết định gom lá thành đúng ~K~ đống lá.

Biết rằng khu vườn có dạng một đường thẳng. ~2~ người đã thiết lập một hệ tọa độ với gốc ở điểm đầu của khu vườn.

Có ~N~ chiếc lá nằm thẳng hàng với trọng lượng khác nhau, khoảng cách giữa ~2~ chiếc lá liên tiếp là ~1~. Nghĩa là, chiếc lá đầu tiên có tọa độ ~1~, chiếc lá thứ ~2~ có tọa độ ~2~, ..., chiếc lá thứ ~N~ có tọa độ ~N~. Ban đầu, ~2~ người đang đứng ở tọa độ ~N~.

Radu và Mars thực hiện việc gom lá trong khi rời khỏi khu vườn, do đó những chiếc lá chỉ có thể di chuyển về bên trái. Chi phí di chuyển một chiếc lá bằng tích của trọng lượng chếc lá và khoảng cách di chuyển. Hiển nhiên, một trong ~K~ đống lá sẽ nằm ở tọa độ ~1~, tuy nhiên những đống còn lại có thể nằm ở bất kỳ vị trí nào.

Yêu cầu: tìm chi phí nhỏ nhất để gom ~N~ chiếc lá thành đúng ~K~ đống lá.

Input

  • Dòng đầu tiên chứa ~2~ số nguyên dương ~N~ và ~K~, cách nhau bởi ~1~ khoảng trắng.
  • Dòng thứ ~i~ trong số ~N~ dòng tiếp theo chứa ~1~ số nguyên dương cho biết trọng lượng của chiếc lá thứ ~i~.

Output

In ra ~1~ số nguyên là chi phí nhỏ nhất để gom ~N~ chiếc lá lại thành đúng ~K~ đống lá.

Giới hạn

  • ~0 < N \leq~ ~100000~
  • ~0 < K \leq~ ~10~, ~K < N~
  • Trọng lượng của mỗi chiếc lá không vượt quá ~1000~.

Sample Input

5 2
1
2
3
4
5

Sample Output

13

Note

Cách tốt nhất là đặt ~2~ đống lá ở vị trí ~1~ và ~4~.


Comments

Please read the guidelines before commenting.


There are no comments at the moment.