zoukankan      html  css  js  c++  java
  • leetcode 打卡 714 DP

    买卖股票的最佳时机含手续费

    一个简单DP
    用一个二维数组dp[n][2], 其中dp[i][0]代表前i个元素此时无股票的最大利润,dp[i][1]代表前i个元素此时有股票的最大利润。
    最后答案求解的就是dp[n - 1][0]就是答案。
    class Solution {
    public:
        int maxProfit(vector<int>& prices, int fee) {
            int dp[50010][2];
            dp[0][0] = 0;
            dp[0][1] = -prices[0];
            for(int i = 1; i < prices.size(); ++i) {
                dp[i][0] = max(dp[i - 1][0], dp[i - 1][1] + prices[i] - fee);
                dp[i][1] = max(dp[i - 1][1], dp[i - 1][0] - prices[i]);
            }
            return dp[prices.size() - 1][0];
        }
    };
    
  • 相关阅读:
    设计模式 23
    生活杂谈
    设计模式经典书籍
    ABP 样板开发框架系列
    关键字
    vs 2015
    优秀文章推荐
    Parallel 并行编程
    CSRF
    sql性能优化
  • 原文地址:https://www.cnblogs.com/lightac/p/14151286.html
Copyright © 2011-2022 走看看