[2002年NOIP提高组] 均分纸牌

分析:每次移动都需要将其补全或删掉,如果这个正好是平均数,则步骤次数不增加

9 8 17 6

-1 -2 7 -4

0 -3 4 -4

0 0 4 -4

0 0 0 0

#include<bits/stdc++.h>
using namespace std;
int main(){
int n,s=0,a[200],ans=0;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
s=s+a[i];
}
s=s/n;
for(int i=1;i<=n;i++){
a[i]=a[i]-s;
}
for(int i=1;i<n;i++){
if(a[i]!=0){
a[i+1]=a[i+1]+a[i];
a[i]=0;
ans++;
}
}
cout<<ans;
}

posted @ 2022-08-16 08:19  TheMagician  阅读(36)  评论(0)    收藏  举报