Cod sursa(job #2836179)

Utilizator Iulia_DianaIulia Diana Iulia_Diana Data 19 ianuarie 2022 21:27:52
Problema Secventa 3 Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <iostream>
#include <fstream>
#include <iomanip>
#include <deque>
using namespace std;
ifstream fin("secv3.in");
ofstream fout("secv3.out");
deque <int>dx;
int c[300005], t[300005];
int main()
{
    int n, l, u;  fin >> n >> l >> u;
    double mnn=0;
    for(int i=1; i<=n; i++)   fin >> c[i];
    for(int i=1; i<=n; i++)   fin >> t[i];
    double sc=0, st=0;
    for(int i=1; i<=n; i++)
    {
        dx.push_back(i);
        sc+=c[i];  st+=t[i];
        if(dx.size()>u)
        {
            sc-=c[dx.front()];
            st-=t[dx.front()];
            dx.pop_front();
        }
        if(dx.size()>=l && sc/st>mnn)  mnn=sc/st;
    }
    while(dx.size()>=l)
    {
        if(sc/st>mnn)  mnn=sc/st;
        sc-=c[dx.front()];
        st-=t[dx.front()];
        dx.pop_front();
    }
    fout << fixed<< setprecision(2)  << mnn;
    return 0;
}