void solve(int N, ll X, ll A[], ll res[]){ ll s = 0; rep(i,N+1) res[i] = -ll_inf; rep(i,N){ s += X - A[i]; res[i+1] >?= s; s >?= 0; } rep(i,N) res[i+1] >?= res[i]; } { int @N; ll @X, @Y, @A[N]; ll ans1[N+1], ans2[N+1], s = sum(A(N)); solve(N,X,A,ans1); reverse(A,A+N); solve(N,Y,A,ans2); rep(i,1,N-1) wt(s + ans1[i] + ans2[N-1-i]); }