Pagini recente » Cod sursa (job #1575769) | Cod sursa (job #2580085) | Cod sursa (job #2240248) | Cod sursa (job #2069661) | Cod sursa (job #521247)
Cod sursa(job #521247)
#include <cstdio>
const int N = 30005;
int n, c[N], t[N], d[N], Q, U;
int a = 0, b = 1;
int main() {
freopen("secv3.in", "r", stdin);
freopen("secv3.out", "w", stdout);
int i;
int num = 0, nr = 0;
scanf("%d%d%d", &n, &Q, &U);
for(i = 1; i <= n; ++i)
scanf("%d", &c[i]);
for(i= 1; i <= n; ++i)
scanf("%d", &t[i]);
int front = 1 , back = 0;
for(i = 1; i <= n; ++i) {
while(back - front + 1 > U)
nr -= c[d[front]], num -= t[d[back]], ++front;
while(back - front + 1 >= Q && (nr + c[i]) * num > nr * (num + t[i]) )
nr -= c[d[front]], num -= t[d[front]], ++front;
++back; d[back] = i;
num += t[i]; nr += c[i];
//printf("%d %d\n", nr, num);
if(nr * b > num * a && back - front + 1 >= Q)
a = nr, b = num;
}
printf("%lf", (double) a/b);
return 0;
}