#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int a[105];
int main(int argc, char *argv[])
{
int n,sum=0;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);sum+=a[i];
}
int tmp=sum/n;
for(int i=1;i<=n;i++)a[i]-=tmp;
int i=1,j=n;
sum=0;
while(a[i]==0&&i<n)i++;
while(a[j]==0&&j>1)j--;
while(i<j){
a[i+1]+=a[i];
a[i]=0;
sum++;
i++;
while(a[i]==0&&i<j)i++;
}
printf("%d\n",sum);
return 0;
}
/*
注意:
1.善于将每堆牌数减去平均数,简化了问题;
2.要过滤掉0(不是所有的0,如一2,3,0,-1中的0是不能过滤的);
3.负数张牌也可以移动,这是关键中的关键。
*/
今天是2024年,祝大家新年快乐!