Cod sursa(job #2266564)

Utilizator maria_sinteaMaria Sintea maria_sintea Data 22 octombrie 2018 19:29:22
Problema Secventa 3 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <iostream>
#include <cstdio>
#include <deque>
#define N 30001

using namespace std;

int n, lmin, lmax, c[N], t[N], poz;
double maxi=0;
//deque <double> q;

int main()
{
    freopen("secv3.in", "r", stdin);
    freopen("secv3.out", "w", stdout);

    scanf("%d %d %d\n", &n, &lmin, &lmax);
    for(int i=1;i<=n;i++)
    {
        scanf("%d ", &c[i]);
        c[i]+=c[i-1];
    }
    for(int i=1;i<=n;i++)
    {
        scanf("%d ", &t[i]);
        t[i]+=t[i-1];
    }

    maxi=c[lmin]*1.0/t[lmin];
    poz=lmin;

    for(int i=lmin+1;i<=n;i++)
    {
        if(i-lmin==lmax)
            poz++;
        double a=(c[i]-c[i-lmin])*1.0/(t[i]-t[i-lmin]);
        double b=(c[i]-c[poz-1])*1.0/(t[i]-t[poz-1]);

        if(b<a)
        {
            b=a;
            poz=i-lmin+1;
        }
        if(maxi<b)
            maxi=b;
    }
    printf("%.2llf", maxi);
    return 0;
}