Cod sursa(job #386192)

Utilizator ConsstantinTabacu Raul Consstantin Data 24 ianuarie 2010 12:10:27
Problema Secventa 3 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>
int c[ 30010 ],t[ 30010 ],n,l,i,u,p,sc,st;

float maxim;

int main(){
freopen("secventa3.in","r",stdin);
freopen("secventa3.out","w",stdout);

scanf("%d %d %d",&n,&l,&u);

for(i = 1; i <= n; i++)
	scanf("%d",&c[i]);
for(i = 1; i <= n ; i++)
	scanf("%d",&t[i]);

for(i = 1 ; i <= l; i++)
	{sc+=c[i];st+=t[i];}
maxim = float(sc)/float(st);

p = 1;
for(i = l+1; i <= n ;i++)
	{sc += c[i];
	st+=t[i];
	if(i - p + 1 > u){sc -= c[p];st -= t[p];p++;}
	
	while(float(sc- c[p])/float(st - t[p]) > float(sc)/float(st) && (i-p+1)>l){
		sc -= c[p];
		st -= t[p];
		p++;}
	if(float(sc)/float(st) > maxim)maxim = float(sc)/float(st);
	}
	
printf("%f",maxim);
return 0;}