这个题目其实就是求最大子区间和的问题
原理 一天的股票的增长相对于前一天来说是固定的,我们把第一天的增长定义为0,其实就是求增长和最大,即maxRes=max(maxRes.thisRes)套用最大子区间和的模板就可以,时间复杂度O(n),空间复杂度O(1)

class Solution {
public:
    /**
     *
     * @param prices int整型vector
     * @return int整型
     */
    int maxProfit(vector<int>& prices) {
        int maxvalue = 0;
        int cur = 0;
        for (int i = 1; i < prices.size(); i++) {
            int p=prices[i]-prices[i-1];
            cur += p;
            maxvalue = max(maxvalue, cur);
            cur = cur < 0 ? 0 : cur;
        }
        return maxvalue;
    }
};