给一个通俗一点的理解。
显然,这道题我们要枚举左端点 lll,问题转化为让 [l,l+k−1][l,l+k-1][l,l+k−1] 区间内高度相同的最小次数;而操作等价于让一个柱子高度减一或者加一,那么要求最小操作数,问题就可以变成求一个整数 hhh 使得 [l,l+k−1][l,l+k-1][l,l+k−1] 中每个数与其差的绝对值和最小。
可以发现,当 hhh 为该区间的中位数是满足差的绝对值和最小,因为如果让 hhh 从中位数往左右变化,都会让答案变差。
那么至此,我们的问题转化为了求 maxl=1n−k+1[l,l+k−1]的中位数\max\limits_{l=1}^{n-k+1}[l,l+k-1] \text{的中位数}l=1maxn−k+1[l,l+k−1]的中位数。