zoukankan      html  css  js  c++  java
  • 0714. Best Time to Buy and Sell Stock with Transaction Fee (M)

    Best Time to Buy and Sell Stock with Transaction Fee (M)

    题目

    You are given an array prices where prices[i] is the price of a given stock on the ith day, and an integer fee representing a transaction fee.

    Find the maximum profit you can achieve. You may complete as many transactions as you like, but you need to pay the transaction fee for each transaction.

    Note: You may not engage in multiple transactions simultaneously (i.e., you must sell the stock before you buy again).

    Example 1:

    Input: prices = [1,3,2,8,4,9], fee = 2
    Output: 8
    Explanation: The maximum profit can be achieved by:
    - Buying at prices[0] = 1
    - Selling at prices[3] = 8
    - Buying at prices[4] = 4
    - Selling at prices[5] = 9
    The total profit is ((8 - 1) - 2) + ((9 - 4) - 2) = 8.
    

    Example 2:

    Input: prices = [1,3,7,5,10,3], fee = 3
    Output: 6
    

    Constraints:

    • 1 < prices.length <= 5 * 10^4
    • 0 < prices[i], fee < 5 * 10^4

    题意

    股票买卖问题。给定每一天的股票价格以及相应规则:同一天只能买或卖,卖股票必须在买股票之后,可以执行多次买卖交易,但每次卖股票后要扣除一定的手续费。

    思路

    0309.Best Time to Buy and Sell Stock with Cooldown (M) 解法基本一致。动态规划解决。


    代码实现

    Java

    class Solution {
        public int maxProfit(int[] prices, int fee) {
            int[] hold = new int[prices.length];
            int[] sold = new int[prices.length];
    
            hold[0] = -prices[0];
            sold[0] = 0;
    
            for (int i = 1; i < prices.length; i++) {
                hold[i] = Math.max(hold[i - 1], sold[i - 1] - prices[i]);
                sold[i] = Math.max(sold[i - 1], hold[i - 1] + prices[i] - fee);
            }
    
            return sold[prices.length - 1];
        }
    }
    
  • 相关阅读:
    数据库信息 (表名 行数 堆 集群 非聚集)的查询
    jquerygalleryview2.0 漂亮多样化的图片特效(多项自定义)
    枚举 EnumDescription 位运算 权限 sql c#
    vs2010缓存类
    透明遮罩层
    app_offline.htm的作用
    XmlToJSON(c#)
    jquery性能最佳实践
    .net面试问答(大汇总)
    apk反编译
  • 原文地址:https://www.cnblogs.com/mapoos/p/14544574.html
Copyright © 2011-2022 走看看