# 0714. Best Time to Buy and Sell Stock with Transaction Fee ###### tags: `Leetcode` `Medium` `Dynamic Programming` Link: https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/ ## 思路 每一天只有买股票和卖股票两种状态 如果今天处于**买了股票**的状态说明它有可能保持上一天买股票的状态 或者上一天卖了股票今天又买了 如果今天处于**卖了股票**的状态说明它有可能保持上一天卖股票的状态 或者上一天买了股票今天又卖了 ## Code ```java= class Solution { public int maxProfit(int[] prices, int fee) { int bought = Integer.MIN_VALUE; int sold = 0; for(int p:prices){ bought = Math.max(bought, sold-fee-p); sold = Math.max(sold, bought+p); } return sold; } } ```