#include<bits/stdc++.h>
using namespace std;
const int N=50004;
long long n,k,a[N],l[N],r[N],ans,arr;
int main(){
ios::sync_with_stdio(false);
cin>>n>>k;
for(int i=1;i<=n;i++)cin>>a[i];
sort(a+1,a+n+1);
for(int i=1;i<=n;i++){
arr=1;
while(a[i]-a[arr]>k)arr++;
l[i]=max(l[i-1],i-arr+1);
arr=n;
while(a[arr]-a[i]>k)arr--;
r[i]=max(r[i+1],arr-i+1);
}
for(int i=1;i<=n;i++)ans=max(ans,l[i]+r[i]);
cout<<ans<<endl;
return 0;
}
数据下下来输出比答案多1,求调