CF2078A.Final Verdict

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

Final Verdict

题目描述

Testify - void (Mournfinale) feat. 星熊南巫

给定一个长度为 nn 的数组 aa,你需要重复执行以下操作,直到 aa 的长度变为 11:

选择一个满足 k<∣a∣k < |a| 且 ∣a∣k\frac{|a|}{k} 为整数的正整数 kk。将 aa 分割成 kk 个子序列 ∗^{\text{∗}} s1,s2,…,sks_1, s_2, \ldots, s_k,并满足以下条件:

  • aa 的每个元素恰好属于一个子序列。
  • 每个子序列的长度相等。

之后,将 aa 替换为 $\left[ \operatorname{avg}(s_1), \operatorname{avg}(s_2), \ldots, \operatorname{avg}(s_k) \right]$,其中 $\operatorname{avg}(s) = \frac{\sum_{i = 1}^{|s|} s_i}{|s|}$ 表示子序列所有值的平均值。例如,$\operatorname{avg}([1, 2, 1, 1]) = \frac{5}{4} = 1.25$。

你的任务是判断是否存在一系列操作,使得最终 a=[x]a = [x]。

∗^{\text{∗}} 如果序列 xx 可以通过删除序列 yy 中的若干元素(可能为零个或全部)得到,则称 xx 是 yy 的子序列。

输入格式

每个测试包含多个测试用例。第一行输入测试用例数 tt(1≤t≤5001 \le t \le 500)。接下来描述每个测试用例。

每个测试用例的第一行包含两个整数 nn 和 xx(1≤n,x≤1001 \leq n, x \leq 100)——数组 aa 的长度和最终期望的值。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤1001 \leq a_i \leq 100)——数组 aa。

输出格式

对于每个测试用例,如果存在满足条件的操作序列,输出 "YES"(不带引号),否则输出 "NO"(不带引号)。

你可以以任意大小写形式输出答案(例如字符串 "yES"、"yes" 和 "Yes" 均会被识别为肯定回答)。

说明/提示

在第一个测试用例中,x=3x = 3 且 a=[3]a = [3] 已经满足条件。

在第二个测试用例中,x=9x = 9,且不存在任何操作序列能使最终 a=[9]a = [9]。

在第三个测试用例中,x=9x = 9,存在以下一种可能的操作序列:

  1. 选择 k=2k = 2,s1=[1,12,8]s_1 = [1, 12, 8] 和 s2=[9,14,10]s_2 = [9, 14, 10]。此时 $a = [\operatorname{avg}(s_1), \operatorname{avg}(s_2)] = [7, 11]$。
  2. 选择 k=1k = 1 且 s1=[7,11]s_1 = [7, 11]。此时 a=[avg⁡(s1)]=[9]a = [\operatorname{avg}(s_1)] = [9]。

在第四个测试用例中,x=10x = 10,存在以下一种可能的操作序列:

  1. 选择 k=1k = 1 且 s1=[10,10,10,10,10,10,10,10,10,10]s_1 = [10, 10, 10, 10, 10, 10, 10, 10, 10, 10]。此时 a=[avg⁡(s1)]=[10]a = [\operatorname{avg}(s_1)] = [10]。

翻译由 DeepSeek R1 完成

样例

4
1 3
3
4 9
7 11 2 5
6 9
1 9 14 12 10 8
10 10
10 10 10 10 10 10 10 10 10 10
YES
NO
YES
YES

在线编程 IDE

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