ZOJ4118 Stones in the Bucket

水题 给出n个数 只能让某个数-1 或者 让某个数-1另一个数+1 使最后n个数都相等 问最少的操作数

AC代码:

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 typedef unsigned long long ull;
 5 
 6 ll a[100005];
 7 
 8 int main(){
 9     ll t, n, k;
10     ll ans, sum;
11     cin>>t;
12     while (t--){
13         memset(a, 0, sizeof(a));
14         cin>>n;
15         ans = 0, sum = 0;
16         for (int i = 0; i < n; i++){
17             cin>>a[i];
18             sum += a[i];
19         }
20         sum /= n;
21         for (int i = 0; i < n; i++)
22             if (a[i] > sum)
23                 ans += a[i] - sum;
24         cout<<ans<<endl;
25     }
26     return 0;
27 }
posted @ 2019-05-20 22:11  Misuchii  阅读(223)  评论(0编辑  收藏  举报