int@n,@s,@x[n],@w[n],b[n+1]; sortA(n,x,w); b[0]=0; b[1..n]=b[0..]+w[0..]; int c=bsearch_min[int,c,0,n](x[c]>=s); vectorm(n),t(n); if(c>0){ m[c-1]=(s-x[c-1])*(ll)b[n]; } if(c=0){ ll d=b[n]-b[c]+b[c-i]; t[c-i-1]=m[c-i]+(x[c-i]-x[c-i-1])*d; } REP(j,max(0,c-i),min(c-1,n-i)){ ll d=b[n]-b[j+i+1]+b[j+1]; t[j]=min(m[j+1]+(x[j+1]-x[j])*d,m[j+i]+(x[j+i]-x[j])*d); } if(c>0&&c+i-1=0){ ll d=b[n]-b[c]+b[c-i]; t[c]=m[c-i]+(x[c]-x[c-i])*d; } REP(j,max(c+1,i),min(c+i,n)){ ll d=b[n]-b[j]+b[j-i]; t[j]=min(m[j-i]+(x[j]-x[j-i])*d,m[j-1]+(x[j]-x[j-1])*d); } if(c+i