#include using namespace std; long long inf = 1001001001001001001; void chmin(long long &x,long long y) { if(x > y) x = y; } long long dp[200200][2]; int main() { int N,K,X; cin >> N >> K >> X; vectorA(N); for(int i = 0; i < N; i++) { cin >> A[i]; } for(int i = 0; i <= N; i++) { for(int j = 0; j < 2; j++) { dp[i][j] = inf; } } dp[0][0] = 0; for(int i = 0; i < N; i++) { for(int j = 0; j < 2; j++) { if(j) { chmin(dp[i+1][j],dp[i][j]+K); chmin(dp[i+1][0],dp[i][j]+A[i]); } else { chmin(dp[i+1][j],dp[i][j]+A[i]); chmin(dp[i+1][1],dp[i][j]+K+X); } } } cout << min(dp[N][0],dp[N][1]) << endl; }