Pagini recente » Cod sursa (job #39462) | Cod sursa (job #47453) | Cod sursa (job #14443) | Cod sursa (job #3201301) | Cod sursa (job #3172688)
#include <bits/stdc++.h>
using namespace std;
const int max_size = 3e4 + 1;
double s1[max_size], s2[max_size];
signed main ()
{
#ifdef LOCAL
freopen("test.in", "r", stdin);
freopen("test.out", "w", stdout);
#else
freopen("secv3.in", "r", stdin);
freopen("secv3.out", "w", stdout);
#endif // LOCAL
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n, l, u;
cin >> n >> l >> u;
for (int i = 1; i <= n; i++)
{
double x;
cin >> x;
s1[i] = s1[i - 1] + x;
}
for (int i = 1; i <= n; i++)
{
double x;
cin >> x;
s2[i] = s2[i - 1] + x;
}
double ans = 0;
int st = 1;
for (int i = 1; i <= n; i++)
{
while (st < i - u)
{
st++;
}
if ((s1[i] - s1[st]) / (s2[i] - s2[st]) <= (s1[i] - s1[i - l]) / (s2[i] - s2[i - l]))
{
st = i - l + 1;
}
ans = max(ans, (s1[i] - s1[st - 1]) / (s2[i] - s2[st - 1]));
}
cout << fixed << setprecision(2) << ans;
return 0;
}