3015: 新卡片游戏

时间限制:1000 ms 内存限制:128 MB
上传者:
提交:4 通过:2

题目描述

$ctr$与$dfd$在玩一个游戏,$ctr$有$n$张卡片,每张卡片上写了一个数字,其中第$i$张卡片上的数字为$a_i$。$dfd$说出了一个质数$p$,并指出可以将$n$张卡片重新排列使得相邻两张卡片上数字的乘积是$p^2$ 的倍数,即重新排列后满足$a_i \times a_{i+1} \ mod \ p^2 = 0(i < n)$。$ctr$ 对此表示怀疑,并与$dfd$打赌,输的人会受到相应的惩罚。$dfd$欣然接受了他的挑战,他想知道自己能否赢得这次赌注。

输入格式

输入第一行为一个整数$T$,表示一共有$T$组测试数据。
对于每组测试数据:
第一行有两个整数$n(1 \leq n \leq 10^4)$和$p(1 \leq p \leq 10^{5})$,表示卡片总数与$dfd$提到的的质数。
第二行有$n$个整数,其中第$i$个数字$a_i(1 \leq a_i \leq 10^5)$代表了第$i$张卡片上的字母。
数据保证$p$是一个质数。

输出格式

对于每组测试数据,输出如果$dfd$能够赢得这次赌注输出“YES”,否则输出“NO”。

输入样例 复制

2
5 2
4 4 1 1 1
5 3
3 3 2 2 2

输出样例 复制

YES
NO

数据范围与提示