ll@n,m=1; double@a[n],@b[n],c[n],d[n]; c[0]=a[n-1]; d[0]=b[n-1]; rrep(i,n-1){ c[m]=a[i]; d[m]=b[i]; while(m>0&&c[m]*d[m-1]>=d[m]*c[m-1]){ c[m-1]+=c[m]; d[m-1]+=d[m]; --m; } ++m; } double z=0; rep(i,m){ z+=c[i]