力扣0122——买卖股票的最佳时机II

买卖股票的最佳时机II

难度:中等

题目描述

给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。

在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。

返回 你能获得的 最大 利润

示例1

输入: prices = [7,1,5,3,6,4]
输出: 7

示例2

输入: prices = [1,2,3,4,5]
输出: 4

题解

因为不是只能购买一次,所以只要是后一天的利润大于前一天都可以直接卖出

想法代码

public class Solution
{
    public static void Main(string[] args)
    {
        Solution solution = new Solution();
        int[] prices = { 7, 1, 5, 3, 6, 4 };
        int ans = solution.MaxProfit(prices);
        Console.WriteLine(ans);
    }

    public int MaxProfit(int[] prices)
    {
        int ans = 0;
        int pre = prices[0];
        for (int i = 1; i < prices.Length; i++)
        {
            ans += Math.Max(prices[i] - pre, 0);
            pre = prices[i];
        }
        return ans;
    }
}

你可能感兴趣的:(算法进修,leetcode,算法,职场和发展)