#5581. CSES2086 子数组平方

0

CSES2086 子数组平方

#CS2086. 子数组平方

子数组平方

题目背景

翻译自 CSES-2086 题。

题目描述

给定一个包含 n 个元素的数组,你的任务是将其分成 k 个子数组。每个子数组的成本是该子数组中所有元素和的平方。请问,若你采取最优策略,最小总成本是多少?

输入格式

第一行输入两个整数 n 和 k,分别表示数组的元素个数和子数组的数量。数组元素编号为 1,2,...,n1, 2, ..., n1,2,...,n。

第二行输入 n 个整数 x1,x2,...,xnx_1, x_2, ..., x_nx1​,x2​,...,xn​,表示数组的元素。

输出格式

输出一个整数:表示最小的总成本。

样例

8 3
2 3 1 2 2 3 4 1
110

样例1解释 一种最优的划分方案是:

  • 子数组 [2,3,1][2, 3, 1][2,3,1],其成本为 (2+3+1)2=62=36(2 + 3 + 1)^2 = 6^2 = 36(2+3+1)2=62=36

  • 子数组 [2,2,3][2, 2, 3][2,2,3],其成本为 (2+2+3)2=72=49(2 + 2 + 3)^2 = 7^2 = 49(2+2+3)2=72=49

  • 子数组 [4,1][4, 1][4,1],其成本为 (4+1)2=52=25(4 + 1)^2 = 5^2 = 25(4+1)2=52=25

总成本为 36+49+25=11036 + 49 + 25 = 11036+49+25=110。

说明/提示

1kn301 \leq k \leq n \leq 30

1≤xi≤1051 \leq x_i \leq 10^51≤xi​≤105。