本题目基于动态规划的思路,用来求解原问题时间复杂度O(n).
class Solution {
public:
vector<int> replaceElements(vector<int>& arr) {
vector<int>dp(arr.size(),-1);
dp[arr.size()-1]=-1;
for(int i=arr.size()-2;i>=0;i--)
{
dp[i]=max(arr[i+1],dp[i+1]);
}
return dp;
}
};