CF1789A Serval and Mocha's Array
题目描述
Mocha 喜欢数组,Serval 送给了她一个由正整数组成的数组作为礼物。
Mocha 认为,对于一个正整数数组 $a$,当且仅当 $a$ 中所有元素的最大公约数不超过其长度时,这个数组是好的。对于长度至少为 $2$ 的正整数数组,当且仅当它的所有长度不少于 $2$ 的前缀都是好的时,这个数组是美丽的。
例如:
- $[3,6]$ 不是好的,因为 $\gcd(3,6)=3$,大于其长度 $2$。
- $[1,2,4]$ 既是好的也是美丽的,因为它所有长度不少于 $2$ 的前缀 $[1,2]$ 和 $[1,2,4]$ 都是好的。
- $[3,6,1]$ 是好的但不是美丽的,因为 $[3,6]$ 不是好的。
现在 Mocha 给你一个长度为 $n$ 的正整数数组 $a$ 作为礼物,她想知道是否可以通过重新排列 $a$ 中的元素,使得数组 $a$ 变成美丽的。你也可以保持数组 $a$ 不变。
输入格式
每组测试包含多个测试用例。第一行包含测试用例的数量 $t$($1\leq t\leq 500$)。接下来是每个测试用例的描述。
每个测试用例的第一行包含一个整数 $n$($2\leq n\leq 100$),表示数组 $a$ 的长度。
每个测试用例的第二行包含 $n$ 个整数 $a_1,a_2,\ldots,a_n$($1\leq a_1,a_2,\ldots,a_n\leq 10^6$),表示数组 $a$ 的元素。
输出格式
对于每个测试用例,如果可以通过重新排列 $a$ 的元素使其变成美丽的,输出 Yes;否则输出 No。
你可以用任意大小写形式输出 Yes 和 No(例如 yEs、yes、Yes 和 YES 都会被识别为肯定回答)。
说明/提示
在第一个测试用例中,$[3,6]$ 和 $[6,3]$ 都不是美丽的,因此无法通过重新排列 $a$ 的元素得到美丽的数组。
在第二个测试用例中,$[1,2,4]$ 已经是美丽的,保持数组 $a$ 不变即可得到美丽的数组。
由 ChatGPT 4.1 翻译