[leetcode]Best Time to Buy and Sell Stock III
2013-06-28 17:54
330 查看
Say you have an array for which the ith element
is the price of a given stock on day i.
Design an algorithm to find the maximum profit. You may complete at most two transactions.
Note:
You may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again).
is the price of a given stock on day i.
Design an algorithm to find the maximum profit. You may complete at most two transactions.
Note:
You may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again).
class Solution { public: int maxProfit(vector<int> &prices) { // Start typing your C/C++ solution below // DO NOT write int main() function if(prices.empty()) return 0; int N = prices.size(); vector<int> forward(N, 0); vector<int> backward(N, 0); int curmin = prices[0]; int result = 0; for(int i = 1; i < prices.size(); i++){ curmin = min(curmin, prices[i]); result = max(result, prices[i] - curmin); forward[i] = result; } int curmax = prices.back(); result = 0; for(int i = N-2; i >= 0; i--){ curmax = max(curmax, prices[i]); result = max(result, curmax - prices[i]); backward[i] = result; } int ret = 0; for(int i = 0; i < N-1; i++){ ret = max(ret, forward[i] + backward[i+1]); } ret = max(ret, forward.back()); return ret; } };
相关文章推荐
- LeetCode Best Time to Buy and Sell Stock I II III
- [leetcode]Best Time to Buy and Sell Stock III
- [LeetCode] Algorithms-45. 123. Best Time to Buy and Sell Stock III
- leetcode Best Time to Buy and Sell Stock III
- [LeetCode] Best Time to Buy and Sell Stock III
- LeetCode Best Time to Buy and Sell Stock III
- [LeetCode]Best Time to Buy and Sell Stock III
- LeetCode——Best Time to Buy and Sell Stock III (股票买卖时机问题3)
- Leetcode: Best Time to Buy and Sell Stock III
- LeetCode-Best Time to Buy and Sell Stock III
- LeetCode Best Time to Buy and Sell Stock III
- [Leetcode] #121#122#123#188 Best Time to Buy and Sell Stock I & II & III & IV
- leetcode 16: Best Time to Buy and Sell Stock III
- [LeetCode] Best Time to Buy and Sell Stock III
- LeetCode: Best Time to Buy and Sell Stock I && II && III
- leetcode Best Time to Buy and Sell Stock III
- leetcode Best Time to Buy and Sell Stock I&&II&&III
- [LeetCode] Best Time to Buy and Sell Stock III Solution
- leetcode_question_123 Best Time to Buy and Sell Stock III
- Best Time to Buy and Sell Stock III -- LeetCode