Gửi bài giải


Điểm: 18
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Tý có \(N\) công việc cần làm trong đúng \(K\) ngày. Các công việc phải làm theo thứ tự. Mỗi ngày Tý làm một số công việc liên tiếp. Độ stress của một ngày bằng bình phương tổng độ khó các việc trong ngày đó.

Cụ thể, nếu ngày đó làm các việc từ \(l\) đến \(r\), độ stress là \((a_l + a_{l+1} + \dots + a_r)^2\).

Tổng stress là tổng độ stress các ngày. Tý muốn tổng stress nhỏ nhất khi chia \(N\) việc thành \(K\) ngày.

Dữ liệu vào
  • Dòng đầu gồm \(N, K\) (\(1 \le K \le N \le 10^5\)).
  • Dòng thứ hai gồm \(N\) số \(a_1, a_2, \dots, a_N\) (\(|a_i| \le 10^4\)).
Kết quả ra
  • In ra tổng stress nhỏ nhất.
Ví dụ
Input
5 2
1 2 3 4 5
Output
63

Giải thích: Chia \((1, 2, 3)\) và \((4, 5)\): \((1+2+3)^2 + (4+5)^2 = 36 + 81 = 117\). Chia \((1, 2)\) và \((3, 4, 5)\): \(9 + 144 = 153\).

Subtask
Subtask Điểm Ràng buộc
1 \(20\%\) \(N \le 100\)
2 \(30\%\) \(N \le 5000\)
3 \(50\%\) \(N \le 10^5\)

Nhận xét

Không có ý kiến tại thời điểm này.