题目描述
给定一个长度为N的整数数组A,你需要创建另一个长度为N的整数数组B,数组B被分为K个连续的部分,并且如果i和j在同一个部分,则B[i]=B[j]。
如果要求数组B能够满足Σ∣A[i]−B[i]∣最小,那么最小值是多少,请你输出这个最小值。
输入格式
输入包含多组测试数据。
对于每组测试数据,第一行包含两个整数N和K。
接下来N行每行包含一个整数,表示完整的数组A。
当输入为一行0 0时,表示输入终止。
输出格式
对于每组数据,输出一个最小值。
每个结果占一行。
样例
输入样例
7 2
6
5
4
3
2
1
7
0 0
输出样例
9
提示
1≤N≤2000,
1≤K≤25,K≤N