Shu-How Zの小窝

Loading...

123. 买卖股票的最佳时机

123. 买卖股票的最佳时机 III

/**
 * @param {number[]} prices
 * @return {number}
 */
var maxProfit = function(prices) {
    if(prices.length===1) return 0;
    let init=null
    /**
        dp[i][0]: 无操作; 
        dp[i][1]: 第一次买入;
        dp[i][2]: 第一次卖出;
        dp[i][3]: 第二次买入;
        dp[i][4]: 第二次卖出;
     */
    const dp=new Array(5).fill(init)
    dp[1]=-prices[0]
    dp[3]=-prices[0]
    for(let i=1;i<prices.length;i++){
        dp[1]=Math.max(dp[1],dp[0]-prices[i])
        dp[2]=Math.max(dp[2],dp[1]+prices[i])
        dp[3]=Math.max(dp[3],dp[2]-prices[i])
        dp[4]=Math.max(dp[4],dp[3]+prices[i])
    }
    return dp[4]
};  
// let prices = [3,3,5,0,0,3,1,4]
let prices = [1,2]
console.log(maxProfit(prices))

…v

posted @ 2025-01-19 17:17  KooTeam  阅读(9)  评论(0)    收藏  举报