买卖股票的最佳时机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;}
}