根据题意模拟即可,因为第一堆如果不满足要求,则只能移到第二堆。
# include <bits/stdc++.h>
using namespace std;
const int N=200;
int a[N];
int main() {
int n;
int sum=0;
cin>>n;
for(int i=1; i<=n; i++) {
cin>>a[i];
sum+=a[i];
}
int res=sum/n;
int cnt=0;
for(int i=1; i<n; i++) {
if(a[i]!=res) {
cnt++;
if(a[i]>res) {
a[i+1]+=a[i]-res;
} else {
a[i+1]-=res-a[i];
}
}
}
cout<<cnt<<endl;
}