#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
typedef long long int lli;
const lli inf = 1e18;

int main(){
    lli n,p,q;
    cin >> n >> p >> q;
    vector<lli> c(n);
    for(int i=0; i<n; i++){
        cin >> c[i];
    }

    lli sum = 0;
    vector<lli> diff(n);
    for(int i=0; i<n; i++){
        sum += c[i];
        diff[i] = (q-i)*p -c[i];
    }
    sort(diff.begin(), diff.end(), greater<lli>());

    lli ans = sum;
    for(int i=0; i<n; i++){
        sum += diff[i] +i*2*p;
        ans = max(ans, sum);
    }
    cout << ans << endl;
    return 0;
}

