显然每个单位时间会让相邻两个数的差减小 1 1 1,也就是说相邻两个数变得相等需要 a i − a i − 1 a_i - a_{i-1} ai−ai−1 个单位时间,相邻多个数可以看成差的平均数,已知平均数一定比其中一个数大,所以直接 O ( n ) O(n) O(n) 扫一遍。
没有相等的,随便贪心一下。大概是把左边和右边排个序,看看把左边最大的几个和右边最小的几个交换,显然你确定了换哪些数,无论你的顺序如何答案是定了的。
建出 Trie 树贪心一下,大概是能在深的地方组成集合就组成。
bitset 优化差分。