#CF1931B. B. 使所有容器水量相等
B. 使所有容器水量相等
B. 使所有容器水量相等
每个测试点时间限制:2 秒
每个测试点内存限制:256 兆字节
有 个并排的水容器,从左到右编号为 到 。每个容器可以装任意多的水;初始时,第 个容器装有 单位的水。所有 的和能被 整除。
你可以进行任意多次(包括零次)以下操作:
从第 个容器向第 个容器倒入任意数量的水,其中必须满足 (即 在 的左边)。
任何容器都可以任意多次作为 或 被选择。
判断是否可以通过这种操作使得所有容器的水量相同。
输入
第一行包含一个整数 ()—— 测试用例的数量。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 ()—— 容器的数量。
第二行包含 个整数 ()—— 每个容器的初始水量。
保证每个测试用例中所有 的和不超过 ,且能被 整除。
所有测试用例的 之和不超过 。
输出
输出 行,每行是对应测试用例的答案。如果可以通过上述操作使得所有容器水量相同,输出 "YES",否则输出 "NO"。
你可以以任意大小写输出答案(例如 "yEs"、"yes"、"Yes"、"YES" 都视为肯定答案)。
示例
输入
6
1
43
2
1 3
5
4 5 2 1 3
3
1 2 3
7
4 5 5 0 6 4 4
7
6 5 5 1 3 4 4
输出
YES
NO
YES
NO
NO
YES
示例说明
在第三个测试用例 中,可以如下操作:
- 从第一个容器向第四个容器倒 单位水,得到 ;
- 从第二个容器向第三个容器倒 单位水,得到 ;
- 从第二个容器向第四个容器倒 单位水,得到 。