
import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
import java.lang.*;
public class JaiShreeRam{
	static Scanner in=new Scanner();
	static long mod = 1000000007;
	static int seive[]=new int[1000001];
	static int level[]=new int[200001];
	static int parent[][]=new int[200001][18];
	static int count=0;
	static ArrayList<ArrayList<Integer>> al=new ArrayList<>();
	public static void main(String[] args) throws Exception{
		int t=in.readInt();
		while(t-->0) {
			long n=in.readInt();
			long sum=0;
			for(int i=0;i<n;i++) {
				sum+=in.readLong();
			}
			long a=sum%n;
			if(a==0) {
				System.out.println(0);
				continue;
			}
			System.out.println((n-a)*a);
		}
    }
	//static void build()
	static void dfs(int node,int par,int k,int m,int a[]) {
		if(k>m) {
			return;
		}
		int f=1;
		for(int i:al.get(node)) {
			if(i!=par) {
				f=0;
				if(a[i-1]==1) {
					dfs(i,node,k+a[i-1],m,a);
				}
				else {
					dfs(i,node,0,m,a);
				}
			}
		}
		if(al.get(node).size()==1&&f==1) {
			count++;
			return;
		}
	}
	static void seive() {
		Arrays.fill(seive, 1);
		seive[0]=0;
		seive[1]=0;
		for(int i=2;i*i<1000001;i++) {
			if(seive[i]==1) {
				for(int j=i*i;j<1000001;j+=i) {
					if(seive[j]==1) {
						seive[j]=0;
					}
				}
			}
		}
	}
	static int[] nextIntArray(int n){
		int[] arr= new int[n];
		int i=0;
		while(i<n){
			arr[i++]=in.readInt();
		}
		return arr;
	}
	static int[] nextIntArray1(int n){
		int[] arr= new int[n+1];
		int i=1;
		while(i<=n){
			arr[i++]=in.readInt();
		}
		return arr;
	}
	static long gcd(long a, long b) {
		if (b==0) return a;
		return gcd(b, a%b);
	}
 
	static void ruffleSort(long[] a) {
		int n=a.length;
		Random r=new Random();
		for (int i=0; i<a.length; i++) {
			int oi=r.nextInt(n); long temp=a[i];
			a[i]=a[oi];
			a[oi]=temp;
		}
		Arrays.sort(a);
	}
	
	static class Scanner{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st=new StringTokenizer("");
		String readString() {
			while (!st.hasMoreTokens())
				try {
					st=new StringTokenizer(br.readLine());
				} catch (IOException e) {
					e.printStackTrace();
				}
			return st.nextToken();
		}
		double readDouble() {
			return Double.parseDouble(readString());
		}
		int readInt() {
			return Integer.parseInt(readString());
		}
		long readLong() {
			return Long.parseLong(readString());
		}
	}	
}