3035: 绝望のRevue

时间限制:1000 ms 内存限制:256 MB
上传者:
提交:60 通过:7

题目描述

“$Bonjour$!”毒系宝可梦大师$lwqqq$扑上来了!
$BrotherZhi$派出了杰尼龟!
毒系宝可梦大师$lwqqq$派出了$slppp,slppp$使用了麻麻电击!
嘶---------------
杰尼龟倒下了!

$GG$!!!$BrotherZhi$再次输掉了对战,因为对手的$slppp$太强了!为了打败霸占键盘的$slppp$,$BrotherZhi$听从了大木博士的建议,决定去抓一只闪光伊布!但是闪光伊布可不是这么容易就能出现的,必须先捕获$k$只任意两对能力值之差能被$m$整除的小伊布,闪光伊布才有可能出现。

$BrotherZhi$的宝可梦盒中已有$n$只小伊布,第$i$只小伊布的能力值为$a_{i}$。聪明的你能告诉已经熬夜失了智的$BrotherZhi$闪光伊布有可能出现了吗?


形式化的:给定一个有$n$个元素的数组,你需要判断是否可以恰好选出$k$个元素,使得任意两个被选元素差的绝对值可以被$m$整除,如果有合法方案,输出“YES”,否则输出“NO”。

输入格式

输入第一行为一个整数$T(T \leq 30)$,表示一共有$T$组测试数据。

对于每组测试数据:
第一行有三个整数$n(1 \leq n \leq 10^5)$,$k(1 \leq k \leq n)$,$m(1 \leq m \leq 10^5)$,其中$n$表示已有小伊布数量。

第二行有$n$个整数,其中第$i$个整数$a_{i}(1 \leq a_{i} \leq 10^9)$,表示第$i$只伊布的能力值。

输出格式

对于每组测试数据,输出“YES”表示闪光伊布可能出现。否则输出“NO”。

输入样例 复制

3
4 3 4
2 6 5 10
4 3 4
2 7 5 10
1 1 4
5 1 4 1

输出样例 复制

YES
NO
YES

数据范围与提示