# Escalator Conversations
## [題目連結](https://codeforces.com/contest/1851/problem/A)
## 解題想法
* 將所有人由小到大排列,逐一比對
* 固定被比對者的高度(台階),將台階差反應在用於比對的值,例:相對低一階的高度為[身高-一階的高度]
* 將用於比對的值隨著被比對者的身高修正
## 遭遇到的困難
* 比對和修正高度的程式花了一些時間想和修改
## 花費的時間:30分鐘
## 程式碼
```cpp=01
#include<cstdio>
#include<algorithm>
using namespace std;
int main(){
int t,k;
scanf("%d",&t);
for(k=0;k<t;k++){
int n,m,k,h,ans=0,i=0;
scanf("%d%d%d%d",&n,&m,&k,&h);
int p[n];
for(i=0;i<n;i++)scanf("%d",&p[i]);
sort(p,p+n);
int a=h-k*(m-1),b=h+k*(m-1);
while(i!=n&&a<=b){
if(a==h)a+=k;
else if(p[i]==a){
ans++;
i++;
}
else if(p[i]<a)i++;
else a+=k;
}
printf("%d\n",ans);
}
return 0;
}