122, 买卖股票的最佳时机

发布时间 2023-04-01 13:42:49作者: zaoerr
122. 买卖股票的最佳时机 II

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

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

返回 你能获得的 最大 利润 。

func maxProfit(prices []int) int {
	max := func(x, y int) int {
		if x < y {
			return y
		}
		return x
	}
	f0, f1, ft := 0, math.MinInt, 0
	for i := 0; i < len(prices); i++ {
		ft = max(f0, f1+prices[i])
		f1 = max(f1, f0-prices[i])
		f0 = ft
	}
	return f0
}