#include<stdio.h>
#include<string.h>
int N,W,V[15],i,j,t,m,M;
double r;
int main()
{
	for(;scanf("%d%d",&N,&W),N;)
	{
		memset(V,0,sizeof(V));
		for(i=m=0;i<N;i++)
		{
			scanf("%d",&t);
			for(j=0;t>W*(j+1)-1;j++,m=m>j?m:j);
			V[j]++;
		}
		for(i=M=0;i<=m;i++)
			M=M<V[i]?V[i]:M;
		for(i=r=0;i<=m;i++)
			r+=((double)(m-i)/m)*((double)V[i]/M);
		printf("%.8lf\n",r+0.01);
	}
	return 0;
}