只要求出大于均值或者小于均值的大小即可,注意可以使用求和函数accumulate,输出格式也要注意,水题。
#include<cstdio>
#include<numeric>
using namespace std;
int main()
{
int N, arr[51], avg;
while(scanf("%d", &N) && N)
{
static int casecnt = 1;
int mint = 0;
for(int i=0; i<N; ++i)
scanf("%d", arr+i);
avg = accumulate(arr, arr+N, 0);
avg /= N;
for(int i=0; i<N; ++i)
{
if(arr[i]>avg)
mint += arr[i]-avg;
}
printf("Set #%d\nThe minimum number of moves is %d.\n\n", casecnt, mint);
++casecnt;
}
return 0;
}