Cod sursa(job #3282029)

Utilizator gBneFlavius Andronic gBne Data 4 martie 2025 12:34:24
Problema Secventa 3 Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("secv3.in");
ofstream fout("secv3.out");

const int NMax = 30005;

int s[NMax], t[NMax], sp[NMax], tp[NMax];

double query(int N, int l){
    double ans = -1;
    for(int i = l; i <= N; ++ i){
        ans = max(ans, (sp[i] - sp[i - l]) * 1.0 / (tp[i] - tp[i - l]));
    }
    return ans;
}

int main()
{
    int N, L, U;
    fin >> N >> L >> U;
    for(int i = 1; i <= N; ++ i){
        fin >> s[i];
        sp[i] = sp[i - 1] + s[i];
    }
    for(int i = 1; i <= N; ++ i){
        fin >> t[i];
        tp[i] = tp[i - 1] + t[i];
    }
    double ans = -1;
    for(int i = L; i <= U; ++ i){
        ans = max(ans, query(N, i));
    }
    fout << setprecision(9) << ans << '\n';
    return 0;
}