CF1552D Array Differentiation

题目描述

给定一个长度为 $n$ 的整数序列 $a_1,\, a_2,\, \dots,\, a_n$。 是否存在一个长度为 $n$ 的整数序列 $b_1,\, b_2,\, \dots,\, b_n$,使得满足以下性质? - 对于每个 $1 \le i \le n$,都存在两个(不一定不同的)下标 $j$ 和 $k$($1 \le j,\, k \le n$),使得 $a_i = b_j - b_k$。

输入格式

第一行包含一个整数 $t$($1 \le t \le 20$),表示测试用例的数量。接下来有 $t$ 组测试数据。 每组测试数据的第一行包含一个整数 $n$($1 \le n \le 10$)。 第二行包含 $n$ 个整数 $a_1,\, \dots,\, a_n$($-10^5 \le a_i \le 10^5$)。

输出格式

对于每组测试数据,输出一行,如果存在满足条件的序列 $b_1,\, \dots,\, b_n$,则输出 YES,否则输出 NO。

说明/提示

在第一个测试用例中,序列 $b = [-9,\, 2,\, 1,\, 3,\, -2]$ 满足条件。具体如下: - $a_1 = 4 = 2 - (-2) = b_2 - b_5$; - $a_2 = -7 = -9 - (-2) = b_1 - b_5$; - $a_3 = -1 = 1 - 2 = b_3 - b_2$; - $a_4 = 5 = 3 - (-2) = b_4 - b_5$; - $a_5 = 10 = 1 - (-9) = b_3 - b_1$。 在第二个测试用例中,只需选择 $b = [0]$,因为 $a_1 = 0 = 0 - 0 = b_1 - b_1$。 在第三个测试用例中,可以证明不存在长度为 $3$ 的序列 $b$ 满足条件。 由 ChatGPT 4.1 翻译