P1031有那么“一”点点难
这是答案:```
#include
using namespace std;
int main()
{
int n,a[101],b,c,i,j,d;
cin>>n;
b=0;
for(i=1;i<=n;i++)
{
cin>>a[i]; //输入每堆数量
b=b+a[i]; //求出总和
}
c=b/n; //求每堆牌最终的结果
d=0;
for(i=1;i<n;i++)
{
if(a[i]>c){
a[i+1]=a[i+1]+a[i]-c; //如果前面的大,就给后面。
d=d+1;
}
if(a[i]<c){
a[i+1]=a[i+1]-c+a[i]; //如果前面的小,后面的给前面(不怕变负数)
d=d+1;
}
}
cout<<d; //输出次数
return 0;
}