题目 ID: q-8152

如何通过调整数组元素使得极差最小,并计算所需操作次数?

频次 2
编程与算法

当前状态:未收藏、未完成

常见追问

  • 2:数组的和不能被数组长度整除,设m=sum%n,这时候极差最小是1,也就是最终状态是有m个数是medium+1,剩下n-m个数是medium。这时候把数组拍个序,对前n-m个数算和medium小了多少(要+1多少次),后m个数算比medium大了多少(要-1多少次),次数加一起除个2就行了。
  • 1.数组的和能被数组长度(即一共多少个数)整除,即sum%n==0:这时候极差最终会是0,那就算把每个数变到那个平均数的操作数就可以了,然后再把操作数除以2就是操作数(因为每次操作是一个+1一个-1)

常见公司

美团