[HAOI2015]数组游戏
题号:NC19994
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

有一个长度为N的数组,甲乙两人在上面进行这样一个游戏:
首先,数组上有一些格子是白的,有一些是黑的。然 后两人轮流进行操作。每次操作选择一个白色的格子,假设它的下标为x。
接着,选择一个大小在1~n/x之间的整数 k,然后将下标为x、2x、...、kx的格子都进行颜色翻转。不能操作的人输。
现在甲(先手)有一些询问。每次他会给你一个数组的初始状态,你要求出对于这种初始状态他是否有必胜策略。

输入描述:

接下来2*K行,每两行表示一次询问。
在这两行中,第一行一个正整数W,表示数组中有多少个格子是白色的,第二行则有W个1~N之间的正整数,表示白色格子的对应下标。

输出描述:

对于每个询问,若先手必胜输出"Yes",否则输出"No"。答案之间用换行隔开
示例1

输入

复制
3
2
2
1 2
2
2 3

输出

复制
Yes
No

说明

【样例解释】
在第一个询问中,甲选择点1,然后将格子1*1和2*1翻过来即可。
第二个询问中,无论甲选择哪个点,都只能翻掉一个格子。乙只需
翻掉另一个格子就行了。

备注:

对于100%的数据,保证 ,不会有格子在同一次询问中多次出现。