以下是题目的翻译:
有一天,弗拉德对于在地铁扶手电梯上可以与之对话的人感到好奇。总共有 n 名乘客。扶手电梯总共有 m 个台阶,所有台阶从 1 到 m 编号,第 i 个台阶的高度为 i⋅k 。
弗拉德的身高为 H 厘米。身高分别为 a 和 b 的两人可以在扶手电梯上进行对话,如果他们站在不同的台阶上,而他们的身高差等于台阶之间的高度差。
例如,如果两个人的身高分别为 170 和 180 厘米, m=10,k=5 ,那么他们可以站在编号为 7 和 5 的台阶上,台阶之间的高度差等于这两人的身高差: k⋅2=5⋅2=10=180−170 。还有其他可能的方法。
给定大小为 n 的数组 h ,其中 hi 表示第 i 个人的身高。弗拉德想知道他可以与多少人分别在扶手电梯上进行对话。
例如,如果 n=5,m=3,k=3,H=11 , h=[5,4,14,18,2] ,那么弗拉德可以与身高为 5 的人进行对话(弗拉德将站在台阶 1 上,另一个人将站在台阶 3 上),以及身高为 14 的人进行对话(例如,弗拉德可以站在台阶 3 上,另一个人将站在台阶 2 上)。弗拉德无法与身高为 2 的人进行对话,因为即使他们站在扶手电梯的极端台阶上,他们之间的高度差也为 6 ,而他们的身高差为 9 。弗拉德无法与扶手电梯上的其他人进行对话,因此这个示例的答案是 2 。
输入 第一行包含一个整数 t ( 1≤t≤1000 ) — 测试用例的数量。
然后是测试用例的描述。
每个测试用例的第一行包含整数: n,m,k,H ( 1≤n,m≤50 , 1≤k,H≤106 )。在这里, n 表示人数, m 表示台阶数, k 表示相邻台阶之间的高度差, H 表示弗拉德的身高。
第二行包含 n 个整数: h1,h2,…,hn ( 1≤hi≤106 )。在这里, hi 表示第 i 个人的身高。
输出 对于每个测试用例,输出一个整数 — 弗拉德可以与扶手电梯上的多少人分别进行对话。