题目描述 小招正在玩一款修塔游戏:系统中有n座高塔,每座高塔由若干个高度相同的方块堆砌而成。修塔游戏的规则为: 每次从最高塔的塔尖拿走一个方块 每次在最低塔的塔尖堆砌一个方块 小招每次只能完成上述两个动作中的一个动作。游戏的目标是使n座高塔中至少有k座高塔的高度相同,请问小招最少需要多少次才能完成游戏。 分析: 假设经过调整后,最终n座塔中k座塔的高度为h。数组a记录了n座塔的初始高度。算法对h进行遍历。 首先将塔分为三类,即高度高于h、低于h、等于h的,并记录每一类中塔的数量,分别为n_higher,n_lower和n_equal。若高度等于h的塔有k座,即n_equal=k,则无需调...