#!/usr/bin/env rdmd
import std.stdio, std.string, std.conv;
import std.algorithm, std.array;
import std.math, std.numeric;
import std.range;

void main()
{
    for(string S; (S=readln().chomp()).length; )
    {
        auto m = S.split().map!(to!int)();
        auto n = m[0], l=m[1], r=m[2], Ql=m[3], Qr=m[4];
        auto w = array(readln().split().map!(to!int)());
        auto sl = new int[n+1];
        auto sr = new int[n+1];
        foreach(i;0..n)
            sl[i+1] = sl[i]+w[i]*l,
            sr[n-i-1] = sr[n-i]+w[n-i-1]*r;
        auto s = int.max;
        foreach(i;0..n+1)
            s = min(s,sl[i]+max(0,Ql*(i*2-n-1))+sr[i]+max(0,Qr*(n-i*2-1)));
        writeln(s);
    }
}
