题解 | #牛群买卖策略优化# 贪心

牛群买卖策略优化

https://www.nowcoder.com/practice/c8514318443a48218efde630ae11b4c3

知识点

贪心

思路

由于每天都可以进行交易,我们可以只要第二天比第一天的段,而舍弃下降的段。因此只需要枚举相邻的两段,当第二天大于第一天,则可以更新答案。

时间复杂度 O(n)

AC Code(C++)

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param prices int整型vector 
     * @return int整型
     */
    int max_profitv2(vector<int>& prices) {
        // 统计所有的上升段
        int n = prices.size();
        int res = 0;
        for (int i = 1; i < n; i ++) {
            if (prices[i] >= prices[i - 1]) res += prices[i] - prices[i - 1];
        }
        return res;
    }
};

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务