Pagini recente » Cod sursa (job #2636487) | Cod sursa (job #2285399) | Cod sursa (job #1745923) | Cod sursa (job #1895548) | Cod sursa (job #3288911)
#include <fstream>
#include <iomanip>
#include <vector>
#include <algorithm>
#include <map>
#include <string>
using namespace std;
ifstream fin("secv3.in");
ofstream fout("secv3.out");
int k, i, sol, nr, st, n, U, L;
double C[30002], T[30002], sC, sT, maxim;
/*int cb(int val)
{
int i,step;
for(step=1;step<n;step<<=1);
for(i=0;step;step>>=1)
if(i+step<n&&V[i+step]<=val)
i+=step;
return i;
}*/
double f(int st, int dr) { return 1.0 * (C[dr] - C[st - 1]) / (T[dr] - T[st - 1]); }
int main()
{
fin >> n >> L >> U;
for (i = 1; i <= n; i++)
{
fin >> C[i];
C[i] += C[i - 1];
}
for (i = 1; i <= n; i++)
{
fin >> T[i];
T[i] += T[i - 1];
}
st = 1;
for (i = L; i <= n; i++)
{
if (st <= i - U)
st = i - U;
if (f(i - L + 1, i) > f(st, i))
st = i - L + 1;
maxim = max(maxim, f(st, i));
}
fout << fixed << setprecision(2) << maxim;
return 0;
}