Cod sursa(job #3217559)

Utilizator Robert_MitriRobert Mitri Robert_Mitri Data 23 martie 2024 16:32:33
Problema Secventa 3 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include <vector>
#include <algorithm>
#include <iomanip>
using namespace std;
ifstream fin("secv3.in");
ofstream fout("secv3.out");


const int nmax = 30000;

int n,l,u;


int c[nmax + 5];
int t[nmax + 5];


double val(int st,int dr)
{
    return 1.0*(c[dr]-c[st-1])/(t[dr]-t[st-1]);
}

int main()
{
    fin>>n>>l>>u;
    for(int i=1;i<=n;i++)
        fin>>c[i],c[i]+=c[i-1];
    for(int i=1;i<=n;i++)
        fin>>t[i],t[i]+=t[i-1];
    int st=1;
    double sol = -1;
    for(int i=l;i<=n;i++)
    {
        while(st <= i-u)
            st++;
        if(val(i-l+1,i) >= val(st,i))
            st=i-l+1;
        sol=max(sol,val(st,i));
    }
    fout<<fixed<<setprecision(2)<<sol;

}