CF1656B.Subtract Operation

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Subtract Operation

题目描述

给定一个包含 nn 个整数的列表。你可以进行如下操作:选择列表中的一个元素 xx,将 xx 从列表中删除,并将 xx 的值从剩余所有元素中减去。也就是说,每进行一次操作,列表的长度恰好减少 11

给定一个整数 kkk>0k>0),请判断是否存在某种顺序的 n1n-1 次操作,使得操作结束后,列表中唯一剩下的元素等于 kk

输入格式

输入包含多组测试用例。第一行包含一个整数 tt1t1041 \leq t \leq 10^4),表示测试用例的数量。接下来是每个测试用例的描述。

每个测试用例的第一行包含两个整数 nnkk2n21052 \leq n \leq 2 \cdot 10^51k1091 \leq k \leq 10^9),分别表示列表中整数的个数和目标值。

每个测试用例的第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n109ai109-10^9 \leq a_i \leq 10^9)。

保证所有测试用例中 nn 的总和不超过 21052 \cdot 10^5

输出格式

对于每个测试用例,如果存在一种顺序的 n1n-1 次操作可以使唯一剩下的元素为 kk,输出 YES;否则输出 NO。

你可以用任意大小写输出答案(例如 "YES"、"Yes"、"yes"、"yEs" 都会被识别为正确答案)。

说明/提示

在第一个样例中,初始列表为 {4,2,2,7}\{4, 2, 2, 7\},目标值为 k=5k=5。一种可行的方法如下:首先选择第三个元素,得到列表 {2,0,5}\{2, 0, 5\}。接着选择第一个元素,得到列表 {2,3}\{-2, 3\}。最后选择第一个元素,得到列表 {5}\{5\}

由 ChatGPT 4.1 翻译

样例

4
4 5
4 2 2 7
5 4
1 9 1 3 4
2 17
17 0
2 17
18 18
YES
NO
YES
NO

在线编程 IDE

建议全屏模式获得最佳体验