Cod sursa(job #3133422)

Utilizator Ruxandra009Ruxandra Vasilescu Ruxandra009 Data 25 mai 2023 15:29:28
Problema Secventa 3 Scor 100
Compilator cpp-64 Status done
Runda Juniori s4 Marime 0.86 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("secv3.in");
ofstream g("secv3.out");

const int nmax = 30005;
int n, l, u, sumi1[nmax], sumi2[nmax];
double maxi = 0;

int main()
{
    f >> n >> l >> u;
    for(int i = 1; i <= n; i ++)
    {
        int x;
        f >> x;
        sumi1[i] = sumi1[i - 1] + x;
    }

    for(int i = 1; i <= n; i ++)
    {
        int x;
        f >> x;
        sumi2[i] = sumi2[i - 1] + x;
    }

    int k = 1;
    for(int i = l; i <= n; i ++)
    {
        while(i - u > k)k ++;

        if(1.0 * (sumi1[i] - sumi1[k - 1]) / (sumi2[i] - sumi2[k - 1])
            <= 1.0 * (sumi1[i] - sumi1[i - l]) / (sumi2[i] - sumi2[i - l]))k = i - l + 1;

        maxi = max(maxi, 1.0 * (sumi1[i] - sumi1[k - 1]) / (sumi2[i] - sumi2[k - 1]));
    }

    g << fixed << setprecision(2) << maxi;
    return 0;
}