#include <fstream>
#include <iomanip>
using namespace std;
ifstream cin("secv3.in");
ofstream cout("secv3.out");
int n,L,U,c[30005],t[30005];
void read()
{
int i,x;
cin>>n>>L>>U;
for(i=1;i<=n;i++)
{
cin>>x;
c[i]+=(x+c[i-1]);
}
for(i=1;i<=n;i++)
{
cin>>x;
t[i]+=(x+t[i-1]);
}
}
void solve()
{
int len=0,i;
float s2=0,s1=0,sol=0;
for(i=1;i<=n;i++)
{
if(len<U) len++;
s1=1.0*(c[i]-c[i-len])/(t[i]-t[i-len]);
while(len>L)
{
s2=0;
if(len>1)
{
s2=1.0*(c[i]-c[i-len+1])/(t[i]-t[i-len+1]);
}
if(s1>s2) break;
else len--;
}
if(len<=U && len>=L){sol=max(sol,s1);
sol=max(sol,s2);}
//cout<<i-len+1<<" "<<i<<" "<<len<<endl;
}
cout<<setprecision(2)<<fixed<<sol;
}
int main()
{
read();
solve();
return 0;
}
/*
5 2 3
1 1 3 2 5
4 2 5 3 6
7 2 3
9 1 1 8 1 2 1
1 1 1 1 1 1 1
*/