LeetCode-1014.最佳观光组合

题目:
LeetCode-1014.最佳观光组合_第1张图片
代码:

class Solution {
public:
    int maxScoreSightseeingPair(vector<int>& A) {
        int ans=A[0]+A[1]-1,m=A[0];
        for(int i=2;i<A.size();i++){
            m=max(m,A[i-1]+i-1);
            ans=max(ans,m+A[i]-i);
        }
        return ans;
    }
};

注意:如果采取两个max,分别记录A[i]-i和A[i]+i的最大值,最后相加的话,可能两个max的i值相等,情况会十分复杂。
该题采用变j,求下标小于j的最大A[i]+i即可

你可能感兴趣的:(LeetCode-1014.最佳观光组合)