这个题直接找比平均数大的石子的个数就行了,因为我们最终的目的,就是让他们一样!!;
#include <iostream>
#define boost ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
#include <cstdio>
#include <string.h>
#include <algorithm>
#include <vector>
using namespace std;
typedef long long ll;
int main()
{
ll t,n,k,res;
scanf("%lld",&t);
while(t--)
{
vector<ll>res;
scanf("%lld",&n);
ll num=0,sum=0;
for(int i=0;i<n;i++)
{
scanf("%lld",&num);
sum+=num;
res.push_back(num);
}
// sort(res.begin(),res.end());
ll ave=sum/n;
ll sum3=n*ave;
ll c1=0,c2=0;
for(int i=0;i<n;i++)
{
if(res[i]>ave)
{
c2=c2+res[i]-ave;
}
else
{
c1=c1+ave-res[i];
}
}
printf("%lld\n",c2);
// cout<<"ave = "<<ave<<endl;
/* if(sum3==sum)
{
for(int i=0,j=n-1;i<j;i++)
{
if(res[i]>ave)
{
break;
}
while(res[i]<ave)
{
if(res[j]>ave)
{
res[i]++;
res[j]--;
count++;
}
else
{
j--;
}
}
}
printf("%lld\n",count);
}
else
{
int i,j;
for(i=0,j=n-1;i<j;i++)
{
if(res[i]>ave)
{
break;
}
while(res[i]<ave)
{
if(res[j]>ave)
{
res[i]++;
res[j]--;
count++;
}
else
{
j--;
}
}
}
for(int k=j;j>=i;j--)
{
while(res[j]>ave)
{
res[j]--;
count++;
}
}
printf("%lld\n",count);
}*/
}
return 0;
}