Cod sursa(job #3133396)

Utilizator Ruxandra009Ruxandra Vasilescu Ruxandra009 Data 25 mai 2023 15:09:38
Problema Secventa 3 Scor 0
Compilator cpp-64 Status done
Runda Juniori s4 Marime 1.03 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];
float maxi;

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(k + u - 1 < i)k ++;

        float s1 = 1.00 * (sumi1[i] - sumi1[k - 1]) / (sumi2[i] - sumi2[k - 1]);
        float s2 = 1.00 * (sumi1[i] - sumi1[k]) / (sumi2[i] - sumi2[k]);
        while(s1 < s2 && k + l - 1 <= i)
        {
            k ++;
            s1 = 1.00 * ((sumi1[i] - sumi1[k - 1]) - (sumi2[i] - sumi2[k - 1]));
            s2 = 1.00 * ((sumi1[i] - sumi1[k]) - (sumi2[i] - sumi2[k]));
        }

        maxi = max(maxi, s1);
    }

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