Cod sursa(job #2421855)

Utilizator stefan1anubystefan popa stefan1anuby Data 16 mai 2019 13:38:35
Problema Secventa 3 Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
#include <iomanip>

using namespace std;
ifstream cin("secv3.in");
ofstream cout("secv3.out");
int n,L,U,c[30005],t[30005];
void read()
{
    int i,x;
    cin>>n>>L>>U;
    for(i=1;i<=n;i++)
    {
        cin>>x;
        c[i]+=(x+c[i-1]);
    }
    for(i=1;i<=n;i++)
    {
        cin>>x;
        t[i]+=(x+t[i-1]);
    }
}

void solve()
{
    int len=0,i;
    float s2=0,s1=0,sol=0;
    for(i=1;i<=n;i++)
    {
        if(len<U) len++;
        while(len>=L)
        {
            s2=0;
            s1=1.0*(c[i]-c[i-len])/(t[i]-t[i-len]);
            if(len>1)
            {
                s2=1.0*(c[i]-c[i-len+1])/(t[i]-t[i-len+1]);
            }
            if(s1>s2) break;
            else len--;
        }
        sol=max(sol,s1);
        sol=max(sol,s2);
    }
    cout<<setprecision(2)<<fixed<<sol;
}
int main()
{
    read();
    solve();
    return 0;
}