2088: 金箍棒

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:0

题目描述

淘气的悟空变出了N根高度各不相同的金箍棒(1≤高度≤1000),并排列成一排。

悟空可以对每根金箍棒施法,让金箍棒高度变短或者变长,但每一次施法只能使一根金箍棒变短1个高度或者变长1个高度。

现在悟空想通过施法将K(K≤N)根相邻的金箍棒高度变为相同,且要求施法的次数最少,

请你帮助悟空计算出最少需要施法几次可以使K根相邻的金箍棒高度变为相同。

例如∶N=3,K=2,3根金箍棒初始高度分别为∶3,6,1。第一次对高度为3金箍棒施法变高1个高度,

变为4 第二次对高度为6金箍棒施法变短1个高度,变为5 第三次对高度为4金箍棒施法变高1个高度,变为5 2根相邻的金箍棒高度变为相同,最少施法3次。

输入

第一行输入两个正整数N,K(1≤K≤N≤10000),N表示金箍棒的根数,

K表示需要将K根相邻的金箍棒高度变为相同,两个整数之间以一个空格隔开;

第二行输入N个各不相同的正整数(1≤正整数≤1000),表示N根金箍棒的初始高度,N个整数之间以一个空格隔开。

输出

输出一个整数,表示悟空最少需要施法角次可以使K根相邻的金箍棒高度变为相同。

样例输入 复制

3 2
3 6 1

样例输出 复制

3