CSES - Subarray Squares | Bình phương mảng con

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 2000 (p) Thời gian: 1.5s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Cho một mảng gồm \(n\) phần tử, nhiệm vụ của bạn là chia thành \(k\) mảng con. Chi phí của mỗi mảng con là bình phương của tổng của các giá trị trong mảng con. Tổng chi phí tối thiểu là bao nhiêu nếu bạn hành động một cách tối ưu?

Input

  • Dòng đầu vào đầu có hai số nguyên \(n\)\(k\): các phần tử của mảng và số lượng mảng con. Các phần tử của mảng được đánh số \(1, 2, \ldots, n\)
  • Dòng thứ hai có \(n\) số nguyên \(x_1,x_2,\ldots,x_n\): nội dung của mảng

Constraints

  • \(1 \leq k \leq n \leq 3000\)
  • \(1 \leq x_i \leq 10^5\)

Output

  • In một số nguyên: tổng chi phí tối thiểu

Example

Test 1

Input
8 3
2 3 1 2 2 3 4 1
Output
110
Note

Một giải pháp tối ưu là \([2,3,1]\), \([2,2,3]\), \([4,1]\), chi phí của nó là \((2 + 3 + 1)^2 + (2 + 2 + 3)^2 + (4 + 1)^2 = 110\)

Bình luận (8)

Mới nhất
Tải bình luận...