Leetcode-最佳买卖股票机含冷冻期
生活随笔
收集整理的這篇文章主要介紹了
Leetcode-最佳买卖股票机含冷冻期
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
int maxProfit(int* prices, int pricesSize){if(pricesSize == 0){return 0;}/*第i天結(jié)束之后f[i][0]:持有一支股票的最大收益情況f[i][1]:不持有一支股票且處于冷凍期的最大收益情況f[i][2]:不持有一支股票且不處于冷凍期的最大收益情況*//*f[i][0]可能i-1天就已經(jīng)持有一支股票,為f[i-1][0],或者是第i天進(jìn)行買入,為f[i-1][2]-prices[i];故f[i][0]=max{f[i-1][0],f[i-1][2]-prices[i]}f[i][1]是第i 天賣出一支股票,故f[i][1]=f[i-1][0]+prices[i]f[i][2]是可能第i-1也同樣不持有股票且處于冷凍期為f[i-1][2],或者是第i-1天處于不持有股票為冷凍期為f[i-1][1]故f[i][2]=max{f[i-1][1],f[i-1][2]}DP:以0為邊界f[0][0] = -princes[0];f[0][1] = f[0][2] = 0;*/int f[pricesSize][3];f[0][0]=-prices[0];f[0][1] = f[0][2] = 0;for(int i =1;i<pricesSize;++i){f[i][0] = fmax(f[i-1][0],f[i-1][2]-prices[i]);f[i][1] = f[i-1][0] + prices[i];f[i][2] = fmax(f[i-1][1],f[i-1][2]);}return fmax(f[pricesSize-1][1],f[pricesSize-1][2]);
}
?
總結(jié)
以上是生活随笔為你收集整理的Leetcode-最佳买卖股票机含冷冻期的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ios 数组中的字典排序_利用数组和字典
- 下一篇: java excel 操作方式_Java