Cod sursa(job #3217783)

Utilizator Theo20067Cismaru Theodor-Alexe Theo20067 Data 24 martie 2024 17:48:20
Problema Secventa 3 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#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+1)
            st=i-U+1;
        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;
}