#include <bits/stdc++.h>
namespace round206d2 {
namespace c {
int solve(std::istream& in) {
  int n, l, r, ql, qr;
  long long rsum = 0ll, lsum = 0ll;
  in >> n >> l >> r >> ql >> qr;
  std::vector<int> w(n);
  for (int i = 0; i < n; ++i) {
    in >> w[i];
    rsum += w[i];
  }
  long long ans = 0ll;
  for (int kl = 0; kl <= n; ++kl) {
    int d = n - (kl << 1);
    long long cur = lsum * l + rsum * r;
    if (d > 0) {
      cur += --d * qr;
    } else if (d < 0) {
      cur += -++d * ql;
    }
    ans = kl ? std::min(ans, cur) : cur;
    if (n - kl) {
      lsum += w[kl];
      rsum -= w[kl];
    }
  }
  std::cout << ans << std::endl;
  return 999;
}
}  // namespace c
}  // namespace round206d2
int main() {
  std::ios_base::sync_with_stdio(false);
  srand((unsigned)time(0));
  int status = 0;
  do {
    status = round206d2::c::solve(std::cin);
  } while (0);
  return 0;
}
