#include <bits/stdc++.h>
using namespace std;
const int MAX = 3e5+9;
int arr[MAX];
int n,k,Max;
int i=1,j=1;
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>n>>k;
for(int t=1;t<=n;t++){
cin>>arr[t];
}
sort(arr+1,arr+n+1);
while(j<=n)
{
while(j<=n&&arr[j]-arr[i]<=k)
j++;
Max=max(Max,j-i);
i++;
}
cout<<Max;
return 0;
}
#include <bits/stdc++.h>
using namespace std;
const int N=1e6;
long long a[N];
int main()
{
long long n,k;
scanf("%lld %lld",&n,&k);
for(int i=0;i<n;i++)
scanf("%lld",&a[i]);
sort(a,a+n);
long long max=0;
for(int i=0;i<n;i++)
{
long long t=a[i]+k;
long long x=upper_bound(a,a+n,t)-a;
if(x-i>max)
{
max=x-i;
}
}
cout<<max;
return 0;
}