problemcutter

导航

SPOJ Problem 2123:Candy I

#include<cstdio>
#include<cstring>
int n,i,j,p,s;
int a[10001];
int abs(int p){return p>0?p:-p;}
int main(){
    while(scanf("%d",&n)&&n!=-1){
        p=0;
        for (i=1;i<=n;i++){
            scanf("%d",&a[i]);
            p+=a[i];
        }
        if (p%n)printf("-1\n");else{
            s=0;
            p/=n;
            for(i=1;i<=n;i++)
                s+=abs(a[i]-p);
            s/=2;
            printf("%d\n",s);
        }
    }
}

 

求平均数后再将每个数与平均数的差的绝对值相加后除以2,水题。。刷水中。。

 

posted on 2015-03-04 19:58  problemcutter  阅读(146)  评论(0)    收藏  举报