#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 100000 + 20;
int w[MAX_N];
long long dp[2][MAX_N];
long long r, l, Q[2], ans;
int n;
long long check(int i, int j) {
  int tmp = 0;
  if (i < j) {
    swap(i, j);
    tmp = 1;
  }
  if (i > j + 1) return (i - (j + 1)) * Q[tmp];
  return 0;
}
int main() {
  ios::sync_with_stdio(false);
  cin >> n;
  cin >> l >> r >> Q[0] >> Q[1];
  for (int i(1); i < int(n + 1); i++) cin >> w[i];
  dp[0][1] = l * w[1];
  for (int i(2); i < int(n + 1); i++) dp[0][i] = dp[0][i - 1] + l * w[i];
  int head = n;
  dp[1][1] = r * w[head--];
  for (int i(2); i < int(n + 1); i++) dp[1][i] = dp[1][i - 1] + r * w[head--];
  ans = (long long)1e17;
  for (int i(0); i < int(n + 1); i++)
    ans = min(ans, dp[0][i] + dp[1][n - i] + check(i, n - i));
  cout << ans << endl;
  return 0;
}
