Chia việc
Xem dưới dạng PDF
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