#include <bits/stdc++.h>
using namespace std;
int n;
long long DPL[100047], DPR[100047];
long long dpl(int i) {
  if (i < 0 || i >= n)
    return 0;
  else
    return DPL[i];
}
long long dpr(int i) {
  if (i < 0 || i >= n)
    return 0;
  else
    return DPR[i];
}
int main() {
  int i, j, k, l, r, Ql, Qr;
  long long tmp, total = 1000000000000000;
  int W[100047];
  cin >> n >> l >> r >> Ql >> Qr;
  for (i = 0; i < n; i++) cin >> W[i];
  DPL[0] = W[0] * l;
  for (i = 1; i < n; i++) {
    DPL[i] = DPL[i - 1] + W[i] * l;
  }
  DPR[n - 1] = W[n - 1] * r;
  for (i = n - 2; i >= 0; i--) {
    DPR[i] = DPR[i + 1] + W[i] * r;
  }
  for (i = 0; i <= n; i++) {
    tmp = dpl(i - 1) + dpr(i);
    if (i > n - i + 1) {
      tmp += (i - (n - i + 1)) * Ql;
    } else if (n - i > i + 1) {
      tmp += ((n - i) - (i + 1)) * Qr;
    }
    total = min(tmp, total);
  }
  cout << total;
  return 0;
}
