CF2124E Make it Zero

Description

You are given an array $ a $ , consisting of $ n $ positive integers. You are allowed to do the following operation: - Select an array $ b $ of size $ n $ such that the following properties hold: - $ 0 \leq b_i \leq a_i $ for each $ 1 \leq i \leq n $ - There exists an index $ 1\leq i < n $ such that $ b_1+b_2+\ldots+b_i=b_{i+1}+b_{i+2}+\ldots+b_n $ . That is, the sum of the prefix of length $ i $ is equal to the sum of the suffix of length $ n-i $ . - Then, subtract $ b_i $ from $ a_i $ for each $ 1 \leq i \leq n $ . Your task is to change all the elements to $ 0 $ . Find the minimum number of operations required. Then, output a way to perform the operations. If it is impossible to change all the elements of $ a $ to $ 0 $ no matter how many operations are used, print $ -1 $ instead. It can be shown that under the constraints of this problem, the smallest number of operations required is at most $ 17 $ .

Input Format

Each test contains multiple test cases. The first line contains the number of test cases $ t $ ( $ 1 \le t \le 10^4 $ ). The description of the test cases follows. The first line of each test case contains an integer $ n $ ( $ 2 \leq n \leq 5\cdot 10^4 $ ) — the length of the array $ a $ . The second line of each test case contains $ n $ integers $ a_1,a_2,\ldots,a_n $ ( $ 1 \leq a_i \leq 10^{12} $ ) — denoting the array $ a $ . It is guaranteed that the sum of $ n $ over all test cases does not exceed $ 5\cdot 10^4 $ .

Output Format

For each test case, output $ -1 $ if there is no solution. Otherwise, first output an integer $ s $ ( $ 1 \leq s \leq 17 $ ) – the minimum number of operations to change all the elements of $ a $ to $ 0 $ . Then, in the next $ s $ lines, output $ n $ integers in each line $ b_1,b_2,\ldots,b_n (0 \leq b_i \leq a_i) $ — denoting the array $ b $ for each operation. After performing the operations, all the elements of $ a $ should be changed to $ 0 $ .

Explanation/Hint

In the first test case, we can simply choose $ b=a $ in our operation. This is valid because $ b_1+b_2=b_3 $ . In the second test case, it can be proven that it is impossible to change all the elements of $ a $ to $ 0 $ .