Description
从数列A[0], A[1], A[2], ..., A[N-1]中选若干个数,要求相邻的数不能都选,也就是说如果选了A[i],
就不能选A[i-1]和A[i+1].
求能选出的最大和.
1 <= N <= 100000, 1 <= A[i] <= 1000
请为下面的Solution类实现解决上述问题的函数maxSum,函数参数A是给出的数列,
返回值为所求的最大和.
class Solution {
public:
int maxSum(vector<int>& A) {
}
};
例1:A = {2, 5, 2},答案为5.
例2:A = {2, 5, 4},答案为6.
题解:动态规划。每引入第i个数时,存在不包含第i-1个数的最大和hi,
包含第i-1个数的最大和fi,其中hi可以和第i个数相加。
|
1005. 最大和
最新推荐文章于 2024-02-13 09:15:34 发布