在这里插入图片描述
思路:先求出平均值,
-1 -2 7 -4 全部减去平均值
0 -3 7 -4
0 0 4 -4
0 0 0 0

#include<bits/stdc++.h>
using namespace std;
int a[10001],n,sum=0,ans=0;


int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		sum+=a[i];
	}
	int avg=sum/n;				  //最后每个堆上的纸牌数 
	for(int i=2;i<=n;i++){
		if(a[i-1]==avg) continue; //满足条件就不需要移动
		a[i]+=a[i-1]-avg;
		ans++;
	}
	cout<<ans;
	return 0;
}

更多推荐