Codeforces Round 882 (Div. 2)
A
The Man who became a God
Codeforces
800
原题
←B →
翻译中…

Kars is tired and resentful of the narrow mindset of his village since they are content with staying where they are and are not trying to become the perfect life form. Being a top-notch inventor, Kars wishes to enhance his body and become the perfect life form. Unfortunately, $n$ of the villagers have become suspicious of his ideas. The $i$-th villager has a suspicion of $a_i$ on him. Individually each villager is scared of Kars, so they form into groups to be more powerful.

翻译中…

The power of the group of villagers from $l$ to $r$ be defined as $f(l,r)$ where

翻译中…

$$f(l,r) = |a_l - a_{l+1}| + |a_{l + 1} - a_{l + 2}| + \ldots + |a_{r-1} - a_r|.$$

翻译中…

Here $|x-y|$ is the absolute value of $x-y$. A group with only one villager has a power of $0$.

翻译中…

Kars wants to break the villagers into exactly $k$ contiguous subgroups so that the sum of their power is minimized. Formally, he must find $k - 1$ positive integers $1 \le r_1 \lt r_2 \lt \ldots \lt r_{k - 1} \lt n$ such that $f(1, r_1) + f(r_1 + 1, r_2) + \ldots + f(r_{k-1} + 1, n)$ is minimised. Help Kars in finding the minimum value of $f(1, r_1) + f(r_1 + 1, r_2) + \ldots + f(r_{k-1} + 1, n)$.

翻译中…

Input

翻译中…

The first line contains a single integer $t$ $(1 \leq t \leq 100)$ — the number of test cases. The description of test cases follows.

翻译中…

The first line of each test case contains two integers $n,k$ $(1 \leq k \leq n \leq 100)$ — the number of villagers and the number of groups they must be split into.

翻译中…

The second line of each test case contains $n$ integers $a_1,a_2, \ldots, a_n$ $(1 \leq a_i \leq 500)$ — the suspicion of each of the villagers.

翻译中…

Output

翻译中…

For each test case, output a single integer — the minimum possible value of sum of power of all the groups i. e. the minimum possible value of $f(1,r_1) + f(r_1 + 1, r_2) + \ldots + f(r_{k-1} + 1, n)$.

翻译中…

Note

翻译中…

In the first test case, we will group the villagers with suspicion $(1,3,5,2)$ into $(1,3,5)$ and $(2)$. So, $f(1,3) + f(4,4) = (|1 - 3| + |3 - 5|) + 0 = 4 + 0 = 4$.

翻译中…

In the second test case, we will group the villagers with suspicion $(1,9,12,4,7,2)$ into $(1),(9,12),(4,7,2)$. So, $f(1,1) + f(2,3) + f(4,6) = 0 + 3 + 8 = 11$.

翻译中…

样例

Input #1
3
4 2
1 3 5 2
6 3
1 9 12 4 7 2
12 8
1 9 8 2 3 3 1 8 7 7 9 2
Output #1
4
11
2
InputCopy OutputCopy
题目信息
题号
1847A
时间限制
1 s
内存限制
256 MB
标签
贪心
排序

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。