Cod sursa(job #2223697)

Utilizator MoldovanAndrei1Moldovan Andrei MoldovanAndrei1 Data 21 iulie 2018 10:07:41
Problema Secventa 3 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <bits/stdc++.h>
using namespace std;
long long sum[30005],sum1[30005];
int v[30005],u[30005];
int main()
{
    freopen("secv3.in","r",stdin);
    freopen("secv3.out","w",stdout);
    int n,i,k,t;
    scanf("%d",&n);
    scanf("%d%d",&k,&t);
    int l=k;
    for(i=1;i<=n;i++)
    {
        scanf("%d",&v[i]);
        sum[i]=sum[i-1]+v[i];
    }
    for(i=1;i<=n;i++)
    {
        scanf("%d",&u[i]);
        sum1[i]=sum1[i-1]+u[i];
    }
    int max1=0;
    for(i=1;i<=n;i++)
    {
        int j=i+1;
        while(j<=n&&v[j]*u[j-1]>=v[j-1]*u[j])j++;
        if(j-i<l)
        {
            i=j-1;
            continue;
        }
        long long r=sum[j-1]-sum[j-1-l];
        long long p=sum1[j-1]-sum1[j-1-l];
        double rez=1.0*r/p;
        i=j-1;
        rez*=100;
        int cm=rez;
        if(cm>max1)max1=cm;
    }
    double rez=1.0*max1/100;
    printf("%.2f\n",rez);
    return 0;
}