Cod sursa(job #32182)

Utilizator kyrkDragos Dumitrescu kyrk Data 17 martie 2007 14:04:10
Problema Secventa 3 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include<stdio.h>
main()
{
float a[30009],b[30009],smax,s,x,sa,sb;
long i,j,k,l,incmax,finmax,sp,valid,n,inc,fin;
FILE *f,*g;
f=fopen("secv3.in","r");
g=fopen("secv3.out","w");
fscanf(f,"%ld%ld%ld",&n,&k,&l);
for(i=1;i<=n;i++)
 fscanf(f,"%f",&a[i]);
for(i=1;i<=n;i++)
 fscanf(f,"%f",&b[i]);

i=1;

incmax=i;finmax=i;smax=a[i]/b[i];
inc=i;fin=i;s=a[i]/b[i];sa=a[i];sb=b[i];
i++;
do{
   sa+=a[i];sb+=b[i];
   s=sa/sb;
   if(s>=smax)fin++;
   if((s>=smax)&&(((fin-inc)+1)<=l)){smax=s;incmax=inc;finmax=fin;}
   if(s<smax){inc=i+1;fin=i;s=0;sa=0;sb=0;}
   if((fin-inc)+1>l){i--;sa=0;sb=0;inc=i;fin=i-1;}
   i++;
   }while(i<=n);

fprintf(g,"%3.2f",smax);


fclose(f);
fclose(g);
return 0;
}