class Solution {
public:
int maxScoreSightseeingPair(vector<int>& values) {
int n=values.size();
int res=0;
for(int i=0;i<n;i++)
{
for(int j=i;j<n;j++)
{
if(i!=j)
{
int m=values[i] + i + values[j]- j;
res=max(res,m);
}
}
}
return res;
}
};
class Solution {
public:
int maxScoreSightseeingPair(vector<int>& values) {
int n=values.size();
vector<int>a(n,0);
vector<int>b(n,0);
for(int i=0;i<n;i++)
{
a[i]=values[i]+i;//values[i] + i
b[i]=values[i]-i;//values[j]- j
}
int res=0;
int maxA=0;
for(int i=1;i<n;i++)
{
int j=i-1;
maxA=max(maxA,values[j]+j);
res=max(res,maxA+b[i]);
}
return res;
}
};
class Solution {
public:
int maxScoreSightseeingPair(vector<int>& values) {
int ans = 0, mx = values[0] + 0;
for (int j = 1; j < values.size(); ++j) {
ans = max(ans, mx + values[j] - j);
// 边遍历边维护
mx = max(mx, values[j] + j);
}
return ans;
}
};
作者:力扣官方题解
链接:https://leetcode.cn/problems/best-sightseeing-pair/solutions/291380/zui-jia-guan-guang-zu-he-by-leetcode-solution/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
class Solution {
public:
int maxScoreSightseeingPair(vector<int>& values) {
int n=values.size();
int res=0;
int maxA=0;
for(int i=1;i<n;i++)
{
int j=i-1;
maxA=max(maxA,values[j]+j);
res=max(res,maxA+values[i]-i);
}
return res;
}
};