Pagini recente » Cod sursa (job #1878517) | Cod sursa (job #730112) | Cod sursa (job #2899947) | Cod sursa (job #936198) | Cod sursa (job #205307)
Cod sursa(job #205307)
#include <stdio.h>
#define nmax 30001
int l,u,n,a[nmax],b[nmax];
int start,end,k,i,j,uk,ok;
long long s[nmax];
int main(){
freopen("secv3.in","r",stdin);
freopen("secv3.out","w",stdout);
scanf("%d %d %d",&n,&l,&u);
for(i=1;i<=n;++i)
scanf("%d ",&a[i]),a[i] *= 100;
for(i=1;i<=n;++i)
scanf("%d ",&b[i]);
a[5] = 500; b[5] = 6;
start = 0; end = 1<<28;
k = nmax*2000+2;
while(end-start>1)
{
ok = 1;
k = (start + end) / 2;
for(i=1;i<=n;++i)
s[i] = s[i-1] + a[i] - b[i] * k,printf("%d ",s[i]);printf("\n");
for(i=l;i<=u&&ok;++i)
for(j=i;j<=n&&ok;++j)
if(s[j]>=s[j-i])
ok = 0;
k = (start + end) / 2;
if(ok) end = (start + end) / 2,printf("kmax < k ");
else start = (start + end) / 2,printf("kmax > k ");printf("%d\n",k);
}
printf("%d.%02d",k/100,k%100);
return 0;
}