CF1789A.Serval and Mocha's Array

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

Serval and Mocha's Array

题目描述

Mocha 喜欢数组,Serval 送给了她一个由正整数组成的数组作为礼物。

Mocha 认为,对于一个正整数数组 aa,当且仅当 aa 中所有元素的最大公约数不超过其长度时,这个数组是好的。对于长度至少为 22 的正整数数组,当且仅当它的所有长度不少于 22 的前缀都是好的时,这个数组是美丽的。

例如:

  • [3,6][3,6] 不是好的,因为 gcd(3,6)=3\gcd(3,6)=3,大于其长度 22
  • [1,2,4][1,2,4] 既是好的也是美丽的,因为它所有长度不少于 22 的前缀 [1,2][1,2][1,2,4][1,2,4] 都是好的。
  • [3,6,1][3,6,1] 是好的但不是美丽的,因为 [3,6][3,6] 不是好的。

现在 Mocha 给你一个长度为 nn 的正整数数组 aa 作为礼物,她想知道是否可以通过重新排列 aa 中的元素,使得数组 aa 变成美丽的。你也可以保持数组 aa 不变。

输入格式

每组测试包含多个测试用例。第一行包含测试用例的数量 tt1t5001\leq t\leq 500)。接下来是每个测试用例的描述。

每个测试用例的第一行包含一个整数 nn2n1002\leq n\leq 100),表示数组 aa 的长度。

每个测试用例的第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n1a1,a2,,an1061\leq a_1,a_2,\ldots,a_n\leq 10^6),表示数组 aa 的元素。

输出格式

对于每个测试用例,如果可以通过重新排列 aa 的元素使其变成美丽的,输出 Yes;否则输出 No。

你可以用任意大小写形式输出 Yes 和 No(例如 yEs、yes、Yes 和 YES 都会被识别为肯定回答)。

说明/提示

在第一个测试用例中,[3,6][3,6][6,3][6,3] 都不是美丽的,因此无法通过重新排列 aa 的元素得到美丽的数组。

在第二个测试用例中,[1,2,4][1,2,4] 已经是美丽的,保持数组 aa 不变即可得到美丽的数组。

由 ChatGPT 4.1 翻译

样例

6
2
3 6
3
1 2 4
3
3 6 1
3
15 35 21
4
35 10 35 14
5
1261 227821 143 4171 1941
No
Yes
Yes
No
Yes
Yes

在线编程 IDE

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