← Home
#include<bits/stdc++.h>
using namespace std;
int n,k,p[1<<24],q[1<<24],C,x,y;
double f[200][20000];
int main(){
	cin>>n>>k;
	for(int l=1,r;l<k;l=r+1)
		r=(k-1)/((k-1)/l),p[++C]=r,q[r]=C;
	f[0][C]=k;
	for(int i=1;i<=n;i++){
		cin>>x,f[i][0]=f[i-1][0];
		for(int j=1;j<=C;j++){
			f[i][0]=max(f[i][0],f[i-1][j]*(x/(p[j]+1))/x);
			for(int l=1,r;l<=p[j];l=r+1)
				r=p[j]/(p[j]/l),f[i][q[p[j]/l]]=max(f[i][q[p[j]/l]],f[i-1][j]*(x/l)/x);
		}
	}
	cout<<fixed<<setprecision(9)<<f[n][0]<<'\n';
}