CF BUDDY
← Problems·

1552D · Array Differentiation

1800 · bitmasks, brute force, constructive algorithms

Problem: You are given a sequence of nn integers a1,a2,,ana_1, \, a_2, \, \dots, \, a_n.

Does there exist a sequence of nn integers b1,b2,,bnb_1, \, b_2, \, \dots, \, b_n such that the following property holds?

  • For each 1in1 \le i \le n, there exist two (not necessarily distinct) indices jj and kk (1j,kn1 \le j, \, k \le n) such that ai=bjbka_i = b_j - b_k.

Input Format: The first line contains a single integer tt (1t201 \le t \le 20) — the number of test cases. Then tt test cases follow.

The first line of each test case contains one integer nn (1n101 \le n \le 10).

The second line of each test case contains the nn integers a1,,ana_1, \, \dots, \, a_n (105ai105-10^5 \le a_i \le 10^5).

Output Format: For each test case, output a line containing YES if a sequence b1,,bnb_1, \, \dots, \, b_n satisfying the required property exists, and NO otherwise.

Note: In the first test case, the sequence b=[9,2,1,3,2]b = [-9, \, 2, \, 1, \, 3, \, -2] satisfies the property. Indeed, the following holds:

  • a1=4=2(2)=b2b5a_1 = 4 = 2 - (-2) = b_2 - b_5;
  • a2=7=9(2)=b1b5a_2 = -7 = -9 - (-2) = b_1 - b_5;
  • a3=1=12=b3b2a_3 = -1 = 1 - 2 = b_3 - b_2;
  • a4=5=3(2)=b4b5a_4 = 5 = 3 - (-2) = b_4 - b_5;
  • a5=10=1(9)=b3b1a_5 = 10 = 1 - (-9) = b_3 - b_1.

In the second test case, it is sufficient to choose b=[0]b = [0], since a1=0=00=b1b1a_1 = 0 = 0 - 0 = b_1 - b_1.

In the third test case, it is possible to show that no sequence bb of length 33 satisfies the property.

Sample Cases

Case 1

Input

5
5
4 -7 -1 5 10
1
0
3
1 10 100
4
-3 2 10 2
9
25 -171 250 174 152 242 100 -205 -258

Output

YES
YES
NO
YES
YES

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback