#include<bits/stdc++.h>
using namespace std;
const int NMAX = 30000;
int price[NMAX+1],time[NMAX+1];
double ans;
int main()
{
ifstream cin("secv3.in");
ofstream cout("secv3.out");
int n,l,u;
cin>>n>>l>>u;
for(int i=1;i<=n;++i)
{
cin>>price[i];
price[i]+=price[i-1];
}
for(int i=1;i<=n;++i)
{
cin>>time[i];
time[i]+=time[i - 1];
}
ans=price[l]*1.0/time[l];
int poz=1;
double a,b;
for(int i=l+1;i<=n;++i)
{
if(i-l==u)
poz++;
a=(price[i]-price[i-l])*1.0/(time[i]-time[i-l]);
b=(price[i]-price[poz-1])*1.0/(time[i]-time[poz-1]);
if(a>b)
{
b=a;
poz=i-l+1;
}
if(ans<b)
ans=b;
}
cout<<setprecision(2)<<ans;
return 0;
}