Cod sursa(job #2049410)

Utilizator herbertoHerbert Mohanu herberto Data 27 octombrie 2017 09:56:28
Problema Secventa 3 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<stdio.h>
#include<stdlib.h>
#include<deque>
using namespace std;
#define MAXN 30001

double c[MAXN], t[MAXN];
int main(){
  FILE*fin=fopen("secv3.in", "r");
  FILE*fout=fopen("secv3.out", "w");
  int n, a, l, u, i, ok, j;
  double max, r1, r2;
  fscanf(fin, "%d%d%d", &n, &l, &u);
  for(i=1; i<=n; i++){
    fscanf(fin, "%lf", &c[i]);
    c[i]+=c[i-1];
  }
  for(i=1; i<=n; i++){
    fscanf(fin, "%lf", &t[i]);
    t[i]+=t[i-1];
  }
  max=c[l]/t[l];
  j=1;
  for(i=l+1; i<=n; i++){
    if(i-l==u)
      j++;
    r1=(c[i]-c[j-1])/(t[i]-t[j-1]);
    r2=(c[i]-c[i-l])/(t[i]-t[i-l]);
    if(r1<r2){
      r1=r2;
      j=i-l+1;
    }
    if(r1>max)
      max=r1;
  }
  fprintf(fout, "%.3lf", max);
  fclose(fin);
  fclose(fout);
  return 0;
}