396. Rotate Function

class Solution {
public:
    int maxRotateFunction(vector<int>& A) {
        int n = A.size();
        if (!n) return 0;

        int F = 0, sum = 0;
        for (int i = 0; i < n; i++) {
            sum += A[i];
            F += A[i] * i;
        }

        int res = F;
        for (int i = n - 1; i > 0; i--) {
            F += sum - n * A[i];
            res = max(F, res);
        }


        return res;
    }
};

results matching ""

    No results matching ""