# Leetcode 714. Best Time to Buy and Sell Stock with Transaction Fee ###### tags: `Leetcode(C++)` 題目 : https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/submissions/ 。 想法 : 原本以為跟第309題一樣的轉移方程,因為多了FEE的關係,導致可能會有買2次的轉移,所以刪掉rest。 buy(i) = max(buy(i-1), sell(i-1) - price[i]); sell(i) = max(sell(i-1), buy(i-1) + price[i] - fee); 時間複雜度 : O(n)。 程式碼 : ``` class Solution { public: int maxProfit(vector<int>& prices, int fee) { int l=prices.size(), sell_1=0, sell, buy_1=-1*prices[0], buy; if(l == 1) return 0; for(int i=1 ; i<l ; i++){ buy=max(buy_1,sell_1-prices[i]); sell=max(sell_1,buy_1+prices[i]-fee); buy_1=buy; sell_1=sell; } return sell; } }; ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up