Pagini recente » Cod sursa (job #176351) | Cod sursa (job #2803540) | Cod sursa (job #1790842) | Cod sursa (job #1620041) | Cod sursa (job #2903039)
#include <bits/stdc++.h>
/// TONI BO$$ was here
/// #MLC
using namespace std;
int dist[30001], tp[30001], deq[30001];
int main()
{
int n, l, u, i, d, t, j, p;
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]);
for(i = 1; i <= n; i++)
{
dist[i] += dist[i - 1];
tp[i] += tp[i - 1];
}
double maxv = (dist[l] * 1.0) / tp[l];
deq[p = u = 1] = 1;
for(i = l + 1; i <= n; i++)
{
while(p <= u && deq[i] <= i - u)
p++;
while(p <= u && (dist[i] - dist[deq[u] - 1] * 1.0) / (tp[i] - tp[deq[u] - 1]) < (dist[i] - dist[i - l] * 1.0) / (tp[i] - tp[i - l]))
u--;
deq[++u] = i - l + 1;
maxv = max(maxv, (dist[i] - dist[deq[p] - 1] * 1.0) / (tp[i] - tp[deq[p] - 1]));
}
printf("%.2lf", maxv);
return 0;
}