CF1436A.Reorder

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

Reorder

题目描述

给定一个由 nn 个整数构成的数组 aa 和一个整数 mm,请判断是否可以通过重新排列数组 aa 的元素,使得 i=1nj=inajj \sum_{i=1}^{n}{\sum_{j=i}^{n}{\frac{a_j}{j}}} 的值等于 mm?禁止删除或插入元素。请注意,除法过程中不进行取整,例如 52=2.5 \frac{5}{2}=2.5

输入格式

第一行包含一个整数 tt,表示测试用例的数量(1t1001 \le t \le 100)。接下来每个测试用例包含两行。

每个测试用例的第一行包含两个整数 nnmm1n1001 \le n \le 1000m1060 \le m \le 10^6)。第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \ldots, a_n0ai1060 \le a_i \le 10^6),表示数组的元素。

输出格式

对于每个测试用例,如果存在一种重新排列数组元素的方式,使得给定的公式等于给定的值,则输出 "YES";否则输出 "NO"。

说明/提示

在第一个测试用例中,一种可行的排列为 [1,2,5][1, 2, 5]。此时的和为 $(\frac{1}{1} + \frac{2}{2} + \frac{5}{3}) + (\frac{2}{2} + \frac{5}{3}) + (\frac{5}{3}) = 8$。括号内表示内层求和 j=inajj \sum_{j=i}^{n}{\frac{a_j}{j}} ,而括号的和对应于外层的求和。

由 ChatGPT 4.1 翻译

样例

2
3 8
2 5 1
4 4
0 1 2 3
YES
NO

在线编程 IDE

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