Joey Takes Money (Codeforces 1731A)
Tags: Greedy, math

Joey is low on money. His friend Chandler wants to lend Joey some money, but can't give him directly, as Joey is too proud of himself to accept it. So, in order to trick him, Chandler asks Joey to play a game.In this game, Chandler gives Joey an array $$$a_1, a_2, \dots, a_n$$$ ($$$n \geq 2$$$) of positive integers ($$$a_i \ge 1$$$).Joey can perform the following operation on the array any number of times:   Take two indices $$$i$$$ and $$$j$$$ ($$$1 \le i < j \le n)$$$.  Choose two integers $$$x$$$ and $$$y$$$ ($$$x, y \ge 1$$$) such that $$$x \cdot y = a_i \cdot a_j$$$.  Replace $$$a_i$$$ by $$$x$$$ and $$$a_j$$$ by $$$y$$$. In the end, Joey will get the money equal to the sum of elements of the final array. Find the maximum amount of money $$$\mathrm{ans}$$$ Joey can get but print $$$2022 \cdot \mathrm{ans}$$$. Why multiplied by $$$2022$$$? Because we are never gonna see it again!It is guaranteed that the product of all the elements of the array $$$a$$$ doesn't exceed $$$10^{12}$$$. 

Input: Each test contains multiple test cases. The first line contains the number of test cases $$$t$$$ ($$$1 \leq t \leq 4000$$$). Description of the test cases follows.The first line of each test case contains a single integer $$$n$$$ ($$$2 \leq n \leq 50$$$) — the length of the array $$$a$$$.The second line contains $$$n$$$ integers $$$a_1, a_2, \dots, a_n$$$ ($$$1 \leq a_i \leq 10^6$$$) — the array itself.It's guaranteed that the product of all $$$a_i$$$ doesn't exceed $$$10^{12}$$$ (i. e. $$$a_1 \cdot a_2 \cdot \ldots \cdot a_n \le 10^{12}$$$).

Output: For each test case, print the maximum money Joey can get multiplied by $$$2022$$$.

Note: In the first test case, Joey can do the following:   He chooses $$$i = 1$$$ and $$$j = 2$$$ (so he has $$$a[i] \cdot a[j] = 6$$$), chooses $$$x = 6$$$ and $$$y = 1$$$ and makes $$$a[i] = 6$$$ and $$$a[j] = 1$$$. $$$$$$[2, 3, 2] \xrightarrow[x = 6,\; y = 1]{i = 1,\; j = 2} [6, 1, 2]$$$$$$ He chooses $$$i = 1$$$ and $$$j = 3$$$ (so he has $$$a[i] \cdot a[j] = 12$$$), chooses $$$x = 12$$$ and $$$y = 1$$$ and makes $$$a[i] = 12$$$ and $$$a[j] = 1$$$. $$$$$$[6, 1, 2] \xrightarrow[x = 12,\; y = 1]{i = 1,\; j = 3} [12, 1, 1]$$$$$$  The sum is $$$14$$$ which is the maximum of all possible sums. The answer is $$$2022 \cdot 14 = 28308$$$.

Sample Inputs:
3
3
2 3 2
2
1 3
3
1000000 1000000 1

Sample Outputs:
28308
8088
2022000000004044

Solution (Python):
def i():
    n = int(input())
    s = 1
    for x in map(int, input().split()):
        s *= x
    s = (s + n - 1) * 2022
    return str(s)
t = int(input())
a = []
for _ in range(t):
    a.append(i())
print('\n'.join(a))

Solution (Python):
aa = []
for _ in range(int(input())):
    n = int(input())
    l = list(map(int, input().split()))
    c1 = 0
    ans = 1
    for i in l:
        ans *= i
    aa.append(ans + n - 1)
for i in aa:
    print(i * 2022)

Solution (Python):
class Solution:

    def __init__(self):
        pass

    @staticmethod
    def product(arr):
        product = 1
        for element in arr:
            product *= element
        return product

    def solve(self):
        t = int(input())
        result = []
        for i in range(t):
            n = int(input())
            arr = list(map(int, input().split()))
            result.append(2022 * (self.product(arr) + n - 1))
        for x in result:
            print(x)
if __name__ == '__main__':
    sol = Solution()
    sol.solve()