题目大意:有n堆砖,移动几个砖能使得每堆砖的块数相同。
解题思路:算出平均块数,循环一下,比平均数大的,就进行计算。
ac代码:
#include <iostream>
using namespace std;
int n, a[55], sum, ave, cnt=1;
int main()
{
while (scanf("%d", &n)!=EOF && n){
sum = 0;
for (int i=0; i<n; i++){
scanf("%d", &a[i]);
sum += a[i];
}
ave = sum / n;
sum = 0;
for (int i=0; i<n; i++)
if (a[i] > ave)
sum += a[i] - ave;
printf("Set #%d\n", cnt++);
printf("The minimum number of moves is %d.\n\n", sum);
}
return 0;
}