#include using namespace std; using ll = long long; int main(){ ios::sync_with_stdio(false); cin.tie(0); int N, K, X, v; cin >> N >> K >> X; vector> dp(N + 1, vector(3, 1ll << 60)); dp[0][0] = 0; for(int i = 0; i < N; i++){ cin >> v; for(int j = 0; j < 3; j++){ dp[i + 1][0] = min(dp[i + 1][0], dp[i][j] + v); if(j)dp[i + 1][2] = min(dp[i + 1][2], dp[i][j] + K); } dp[i + 1][1] = min(dp[i + 1][1], dp[i][0] + K + X); } cout << *min_element(dp[N].begin(), dp[N].end()) << '\n'; }