#include using namespace std; typedef long long ll; typedef pair P; #define REP(i,n) for(ll i=0;i> N >> S; ll W=0; vector x(N),w(N); REP(i,N) cin >> x[i]; REP(i,N){ cin >> w[i]; W+=w[i]; } ll ans=0; ll u=W; if(Sx[N-1]){ for(i=N-1;i>=0;i--){ if(i==N-1){ ans+=u*(S-x[i]); u-=w[i]; } else{ ans+=u*(x[i+1]-x[i]); u-=w[i]; } } cout << ans << endl; return 0; } vector c=w; for(i=1;i qL; priority_queue,greater > qR; REP(i,N){ if(x[i]