首先用双指针,算法去做(无法用滑动区间,因为区间长度不固定),然后保留4位小数即可

using namespace std;
#define int long long
const int N=2e5+10;
int a[N];
vector<int>q;

signed main()
{
	int n,k;
	cin>>n>>k;
	int ans=0;
	for(int i=1;i<=n;i++)
	{
		int t;
		cin>>t;
		q.push_back(t);		
	}
	sort(q.begin(),q.end());
	int num=0;
	for(int i=0,j=0;i<n;i++)
	{
		
		while(q[i]-q[j]>k)//这里注意判断条件,不用太死板j<i是必然的
		{
			j++;
		}
			num=max(num,i-j+1);
	}
	
	printf("%.4lf",(double)num/n);
	return 0;
# }