During Quarantine Time Chef is at home and he was quite confused about what to cook so, he went to his son and asked about what would he prefer to have? He replied, cakes.
Now, chef cook $N$ number of cake and number of layers for every cake is different. After cakes are baked, Chef arranged them in a particular order and then generates a number by putting number of layers of cakes as digit in sequence (e.g., if chef arranges cakes with layers in sequence $2$, $3$ and $5$ then generated number is $235$).
Chef has to make his son powerful in mathematics, so he called his son and ask him to arrange the cakes in all the possible ways and every time when different sequence is generated he has to note down the number. At the end he has to find sum of all the generated numbers. So, help him to complete this task.

-----Input:-----
- First line will contain $T$, number of testcases. Then the testcases follow. 
- The first line of each test case contains a single integer $N$ denoting number of cakes.
- The second line contains $N$ space-separated integers $L1$ $L2$ … $LN$ layers of the cake.

-----Output:-----
For each test case, print a single line containing sum of all the possible numbers which is generated by arranging cake in different sequence.

-----Constraints :-----
- $1 \leq T  \leq 2*10^5$
- $1 \leq N, L1, L2, L3,…, LN \leq 9$

-----Sample Input:-----
1
3
2 3 5

-----Sample Output:-----
2220

-----Explanation:-----
Sum of all possibilities :
$235 + 532 + 253 + 352 + 523 + 325 = 2220 $

Difficulty: interview

Starter code:

Solutions:
#cook your recipe
from math import factorial
test_cases = int(input())
for _ in range(test_cases):
   n = int(input())
   sum1 = 0
   final_sum = 0
   num = list(map(int, input().split()))
   rep_time = factorial(n - 1)
   rep_count = dict()
   for i in num:
      if i in rep_count:
         rep_count[i] +=1
      else:
         rep_count[i] =1
   for j in rep_count:
      if rep_count[j] ==1:
         sum1 +=  j * factorial(n - rep_count[j])
      else:
         sum1 +=  j * factorial(n-1)/ factorial(n - rep_count[j])
   
   for k in range(n):
      final_sum += sum1 * (10**k)

   print(int(final_sum))

#cook your recipe
from math import factorial
test_cases = int(input())
for _ in range(test_cases):
   n = int(input())
   sum1 = 0
   final_sum = 0
   num = list(map(int, input().split()))
   rep_time = factorial(n - 1)
   rep_count = dict()
   for i in num:
      if i in rep_count:
         rep_count[i] +=1
      else:
         rep_count[i] =1
   for j in rep_count:
      if rep_count[j] ==1:
         sum1 +=  j * factorial(n - rep_count[j])
      else:
         sum1 +=  j * factorial(n-1)/ factorial(n - rep_count[j])
   
   for k in range(n):
      final_sum += sum1 * (10**k)

   print(int(final_sum))

# def toString(List): 
# 	return ''.join(List) 
 
# def permute(a, l, r): 
# 	if(l==r): 
# 		list_ = []
# 		list_.append(toString(a))
# 		return list_'''
# 		print(toString(a))		
# 	else: 
# 		for i in range(l,r+1): 
# 			a[l], a[i] = a[i], a[l] 
# 			permute(a, l+1, r) 
# 			a[l], a[i] = a[i], a[l]

# for _ in range(int(input())):
# 	n = int(input())
# 	p = list(map(str , input().split())) 
# 	permute(p, 0, n-1)
'''def permutation(start, end):
    if(end == start):
        #return a
        print(*a)
    for i in range(start, end+1):
        a[i],a[start] = a[start],a[i]
        permutation(start+1, end)
        a[i],a[start] = a[start],a[i]
for _ in range(int(input())):
	n = int(input())
	a = list(map(int,input().split()))
	permutation(0,len(a)-1)'''
	
def factorial(n): 

	f = 1
	if(n == 0 or n == 1): 
		return 1
	for i in range(2, n + 1): 
		f = f * i 
	return f 
 
def getSum(arr, n): 
 
	fact = factorial(n) 
	digitsum = 0
	for i in range(n): 
		digitsum += arr[i] 
	digitsum *= (fact // n) 
	res = 0
	i = 1
	k = 1
	while(i <= n): 
		res += (k * digitsum) 
		k = k * 10
		i += 1

	return res 
 
for _ in range(int(input())):
	n = int(input())
	arr = list(map(int , input().split()))
	print(getSum(arr, n)) 

# cook your dish here
test_case = int(input())

for i in range(test_case):
    n = int(input())
    
    val = list(map(int, input().split(' ')))
    
    fac = 1
    for j in range(n):
        fac = fac * (j+1)
        
    noOfDigit = fac//n
    
    initialSum = 0
    
    for j in range(len(val)):
        initialSum += val[j]
        
    initialSum = initialSum*noOfDigit
    
    totalSum = 0
        
    for j in range(n):
        totalSum = totalSum + pow(10, j)*initialSum
        
    print(totalSum)

import math
T=int(input())
for i in range(T):
    N=int(input())
    list=input().split()
    s=0
    k='0'
    for j in range(N):
        list[j]=int(list[j])
        s+=list[j]
    for l in range(N):
        k=k+'1'
    k=int(k)
    c=math.factorial(N-1)
    print(s*c*k)


import math
for _ in range(int(input())):
    n = int(input())
    layers = [int(x) for x in input().split()]
    times = math.factorial(n-1)
    d = sum(layers)*times
    ans = 0
    k = 1
    for i in range(n):
        ans += k*d
        k *= 10
    print(ans)


t=int(input())
def fac(x):
    if x==0:
        return 1
    else:
        return x*fac(x-1)
for j in range(t):
    n=int(input())
    a=list(map(int,input().split()))
    s=0
    for i in range(n):
        for j in a:
            s+=(j*10**i)*(fac(n-1))
    print(s)

try:
    import math
    def getSum(arr, n): 
    
        # calculate factorial 
        fact = math.factorial(n) 
    
        digitsum = 0
        for i in range(n): 
            digitsum += arr[i] 
        digitsum *= (fact // n) 
    
        # Compute result (sum of  
        # all the numbers) 
        res = 0
        i = 1
        k = 1
        while i <= n : 
            res += (k * digitsum) 
            k = k * 10
            i += 1
    
        return res 
    
    
    b=int(input())
    
    ls=[]
    
    while(b>0):
        a = int(input())
        
        arr = input()   # takes the whole line of n numbers
        l = list(map(int,arr.split(' ')))
    
    
    # n distinct digits 
        b-=1
        n = len(l) 
        n=a
        
    
        g=int(getSum(l, n))
        ls.append(g)
    for i in ls:
        print(i)
except:
    pass

# your code goes here.............
# Python 3 program to find sun of 
# numbers formed by all permutations 
# of given set of digits 

# function to calculate factorial 
# of a number 
def factorial(n): 

	f = 1
	if (n == 0 or n == 1): 
		return 1
	for i in range(2, n + 1): 
		f = f * i 
	return f 

# Function to calculate sum 
# of all numbers 
def getSum(arr, n): 

	# calculate factorial 
	fact = factorial(n) 

	# sum of all the given digits at 
	# different positions is same and 
	# is going to be stored in digitsum. 
	digitsum = 0
	for i in range(n): 
		digitsum += arr[i] 
	digitsum *= (fact // n) 

	# Compute result (sum of 
	# all the numbers) 
	res = 0
	i = 1
	k = 1
	while i <= n : 
		res += (k * digitsum) 
		k = k * 10
		i += 1

	return res 

# Driver Code 
def __starting_point(): 
	
	# n distinct digits
	t=int(input())
	for _ in range(t):
	    m=int(input())
	    arr = list(map(int,input().split())) 
	    n = len(arr) 

	# Print sum of all the numbers formed 
	    print(getSum(arr, n)) 

# This code is contributed by ita_c 






__starting_point()

try:
    import math
    def getSum(arr, n): 
    
        # calculate factorial 
        fact = math.factorial(n) 
    
        digitsum = 0
        for i in range(n): 
            digitsum += arr[i] 
        digitsum *= (fact // n) 
    
        # Compute result (sum of  
        # all the numbers) 
        res = 0
        i = 1
        k = 1
        while i <= n : 
            res += (k * digitsum) 
            k = k * 10
            i += 1
    
        return res 
    
    
    b=int(input())
    
    ls=[]
    
    while(b>0):
        a = int(input())
        
        arr = input()   # takes the whole line of n numbers
        l = list(map(int,arr.split(' ')))
    
    
    # n distinct digits 
        b-=1
        n = len(l) 
        n=a
        
    
        g=int(getSum(l, n))
        ls.append(g)
    for i in ls:
        print(i)
except:
    pass

from collections import defaultdict
def fac(n):
    if n<=1:
        return 1
    return n*fac(n-1)

for i in range (int(input())):
    n = int(input())
    layers = defaultdict(int)
    list_ = list(map(int,input().split()))
    for j in range (n):
        layers[list_[j]] += 1
    sum_ = 0
    for j in sorted(layers):
        sum_ += j

    sum_ *= fac(len(layers)-1)
    ans = sum_
    for j in range (len(layers)-1):
        ans = ans*10 + sum_
    print(ans)

    


import math
t=int(input())
for i in range(t):
    n=int(input())
    alpha=list(map(int,input().split()))
    beta=math.factorial(n-1)
    sumfinal=int('1'*n)*sum(alpha)*beta
    print(sumfinal)
    
    


from math import factorial
try:
    test_cases = int(input())
    while test_cases:
        test_cases = test_cases -1
        n=int(input())
        cakes=list(map(int,input().split()))
        sum_of_digits=sum(cakes)
        mul=factorial(n)/n     #multiplier
        base=sum_of_digits*mul 
        totalsum = 0
        for k in range(n):
            totalsum += base*(10**k)
        print(int(totalsum))
    
except:
    pass

from math import factorial
try:
    test_cases = int(input())
    while test_cases:
        test_cases = test_cases -1
        n=int(input())
        cakes=list(map(int,input().split()))
        sum_of_digits=sum(cakes)
        mul=factorial(n)/n     #multiplier
        base=sum_of_digits*mul 
        totalsum = 0
        for k in range(n):
            totalsum += base*(10**k)
        print(int(totalsum))
    
except:
    pass

import math
for _ in range(int(input())):
    n = int(input())
    grid = [int(i) for i in input().split()]
    sum1 = int('1'*n)*sum(grid)*math.factorial(n-1)
    print(sum1)


from math import factorial
try:
    test_cases = int(input())
    while test_cases:
        test_cases = test_cases -1
        n=int(input())
        cakes=list(map(int,input().split()))
        sum_of_digits=sum(cakes)
        mul=factorial(n)/n     #multiplier
        base=sum_of_digits*mul 
        totalsum = 0
        for k in range(n):
            totalsum += base*(10**k)
        print(int(totalsum))
    
except:
    pass

from math import factorial
try:
    test_cases = int(input())
    while test_cases:
        test_cases = test_cases -1
        n=int(input())
        cakes=list(map(int,input().split()))
        sum_of_digits=sum(cakes)
        mul=factorial(n)/n     #multiplier
        base=sum_of_digits*mul 
        totalsum = 0
        for k in range(n):
            totalsum += base*(10**k)
        print(int(totalsum))
    
except:
    pass

from math import factorial as fact
def _sum(arr, n): 
    f = fact(n)
    ds = 0
    for i in range(n):
        ds += arr[i]
    ds *= (f // n)
    res, i, k = 0, 1, 1
    while i <= n :
        res += (k * ds)
        k = k * 10
        i += 1
    return res

t = int(input())
for _ in range(t):
    n = int(input())
    arr = list(map(int, input().split()))
    print(_sum(arr, n))


# cook your dish here
def fact(nnn):
    f=1
    for i in range(1,nnn+1):
        f=f*i
    # print(f)
    return f
t=int(input())
for i in range(0,t):
    n=int(input())
    lis=list(map(int,input().strip().split()))[:n]
    s=sum(lis)
    st="1"*n
    last=int(st)
    # fac=
    # print(fact(n-1))
    ans=fact(n-1)*s*last
    print(ans)



import math
for _ in range(int(input())):
    n=int(input())
    a=list(map(int,input().split()))
    f=math.factorial(n) 
    s=0
    for i in range(n): 
        s=s+a[i] 
    s=s*(f//n) 
    r,i,k=0,1,1
    while i<=n : 
        r=r+(k*s) 
        k=k*10
        i=i+1
    print(r)

import math
from collections import defaultdict
import itertools

t = int(input())
for _ in range(t):
    n = int(input())
    a = [int(x) for x in input().split()]
    total = 0
    tmp = 0
    fact = math.factorial(n)
    for i in range(n):
        tmp+=a[i]
    tmp *=(fact//n)
    i=1
    k=1
    while i<=n:
        total += (k*tmp)
        k*=10
        i+=1
    print(total)

import math
t=int(input())
while t>0:
    n=int(input())
    a=[int(i) for i in input().split(" ")]
    summ=0
    for i in range(0,n):
        summ+=math.pow(10,i)
    summ=sum(a)*summ*math.factorial(n-1)
    print(int(summ))
    t-=1

def factorial(n):
    if n==1:
        return 1
    if n==0:
        return 1
    f=1
    for i in range(2,n+1):
        f=i*f
    return f
def cakes(A):
    num=sum(A)
    fact=factorial(len(A)-1)
    num=num*fact
    res=0
    n=len(A)
    i=1
    k=1
    while i<=n:
        res+=num*k
        k=10*k
        i+=1
    return res
t=int(input())
for i in range(t):
    n=int(input())
    A=[int(i) for i in input().split()][:n]
    print(cakes(A))

import math
def fun():
	T=int(input())
	ans=[]
	for i in range(T):
		T=int(input())
		l=list(input().split())
		l=[int(x) for x in l]
		x=[]
		for j in range(len(l)):
			x+=[math.factorial(len(l)-1)*k*math.pow(10,j) for k in l]
			#print(x)
		x1=[int(j) for j in x]
		x=sum(x1)
		#print(x)
		ans.append(x)
	
	for j in ans:
		print(j)
	
fun()