#include <bits/stdc++.h>
/// TONI BO$$ was here
/// #MLC
using namespace std;
int dist[30001], tp[30001];
int main()
{
int n, l, u, i, d, t, j;
freopen("secv3.in","r",stdin);
freopen("secv3.out","w",stdout);
scanf("%d%d%d", &n, &l, &u);
for(i = 1; i <= n; i++)
scanf("%d", &dist[i]);
for(i = 1; i <= n; i++)
scanf("%d", &tp[i]);
d = 0;
t = 0;
for(i = 1; i <= l; i++)
d += dist[i],
t += tp[i];
double maxv = 1.0 * d / t;
for(j = 1; i <= n; i++)
{
d += dist[i];
t += tp[i];
if(i - j + 1 > u)
d -= dist[j],
t -= tp[j],
j++;
while(i - j + 1 > l && 1.0 * d / t < 1.0 * (d - dist[j]) / (t - tp[j]))
d -= dist[j],
t -= tp[j],
j++;
maxv = max(maxv, 1.0 * d / t);
}
printf("%.3lf", maxv);
return 0;
}