思路:
1.判断奶牛的总苹果数是否能够平均分,若不能返回-1
2.用平均数和每个奶牛拥有的苹果数做比较,若差为奇数,返回-1
3.因为每一次只能拿俩,所以用差值除以2,计算拿苹果的次数,输出次数。
#include<iostream>
#include<vector>
using namespace std;
int main(){
int n;
while(cin>>n){
int v[n];
int sum=0;
for(int i=0;i<n;i++){
cin>>v[i];
sum+=v[i];
}
if(sum%n!=0){
cout << -1 << endl;
return 0;
}
int ave=sum/n;
int count=0;
bool flag=false;
for(int i=0;i<n;i++){
if(abs(v[i]-ave)%2!=0){
flag=true;
break;
}
}
if(flag){
cout << -1 << endl;
return 0;
}
for(int i=0;i<n;i++){
if(v[i]-ave>0){
count+=(v[i]-ave)/2;
}
}
cout << count << endl;
}
}